如何在javascript

时间:2016-01-19 02:06:11

标签: javascript jquery arrays ajax search

我想使用数组创建搜索,而不是数据库。我这样做了吗?

<script type="text/javascript">
  $(document).ready(function() {
    $(document).on('submit', '#sample', function() {
      var inputs = document.getElementById("key_id").value;
      var keys = ("testing", "test", "service");
      var keyslgt = keys.length;

      for (var i = 0; i < keyslgt; i++) {
        if (inputs == keys[i]) {
          document.getElementById("demo").innerHTML = "Success";
        } else {
          document.getElementById("demo").innerHTML = "Try different keywords";
        }
      }
      return false;
    });
  });

</script>

我希望输入搜索数组;如果它与其成功相匹配(例子)。我正在避免使用php,因为我不希望我的页面重新加载。我尝试使用ajax代码使页面在点击提交按钮时不重新加载,但它不起作用,所以我尝试其他方式。

1 个答案:

答案 0 :(得分:0)

这个循环存在问题,好像最后一个密钥不匹配,它总是会说“尝试不同的关键字”,即使在之前的单词中也是匹配。 您还有语法问题。这应该在发布之前进行调试,因为它们在开发控制台中很明显。

for(var i=0; i < keyslgt; i++){
  if (inputs == keys[i]){
     document.getElementById("demo").innerHTML = "Success";
     // you could break here to prevent the false condition being met
     break;
  }
  else{
    // this will always show in your code unless the last key matches the input
    document.getElementById("demo").innerHTML = "Try different keywords";
  }
}