search.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. function search_do() {
  2. function search_load() {
  3. var data = document.getElementById("search_input").value;
  4. if(before !== data && data !== '') {
  5. before = data;
  6. var url = "/api/search/" + encodeURI(data);
  7. var xhr = new XMLHttpRequest();
  8. xhr.open("GET", url, true);
  9. xhr.send(null);
  10. xhr.onreadystatechange = function() {
  11. if(this.readyState === 4 && this.status === 200) {
  12. document.getElementById("pre_search").style.display = 'block';
  13. var get_data = JSON.parse(this.responseText);
  14. document.getElementById("pre_search").innerHTML = '';
  15. if(this.responseText !== "{}\n") {
  16. for(key in get_data) {
  17. document.getElementById("pre_search").innerHTML += '<a href="/w/' + encodeURI(get_data[key][0]).replace('#', '%23') + '">' + get_data[key][0] + '</a><br>';
  18. }
  19. } else {
  20. document.getElementById("pre_search").style.display = 'none';
  21. }
  22. }
  23. }
  24. } else if(before !== data && data === '') {
  25. before = '';
  26. document.getElementById("pre_search").style.display = 'none';
  27. }
  28. }
  29. var before = '';
  30. setInterval(search_load, 1000);
  31. }