diff options
Diffstat (limited to 'assets/js')
-rw-r--r-- | assets/js/searchform.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/assets/js/searchform.js b/assets/js/searchform.js new file mode 100644 index 0000000..c18311c --- /dev/null +++ b/assets/js/searchform.js @@ -0,0 +1,39 @@ + // search + function query(queryterm) { + var result = do_search(queryterm); + const rbase = document.getElementById("results"); + rbase.textContent = ""; + if (result.length) { + var root = rbase.appendChild(document.createElement("ul")); + result.forEach(function(p) { + var li = document.createElement("li"); + var el = li.appendChild(document.createElement("a")); + el.textContent = p.title; + el.href = p.url; + // converted to page, to more score + /*el = li.appendChild(document.createElement("span")); + el.textContent = " [score: " + r.score.toString() + "]";*/ + root.appendChild(li); + }); + } else { + var el = document.createElement("p"); + el.textContent = "No results"; + rbase.appendChild(el); + } + document.getElementById("qterm").textContent = queryterm; + } + + // Function to be called on submit + function submitSearch() { + console.log("Search submitted"); + const qbox = document.getElementById("input_qterm").value; + if (qbox.length !== 0) { + query(qbox); + } + } + + // Attach event handler to form submission + document.getElementById("searchForm").onsubmit = function(ev) { + ev.preventDefault(); // Prevent default form submission behavior + submitSearch(); + }; |