Chrome - 使用Ajax,JS和PHP自动完成

时间:2013-12-21 21:18:23

标签: javascript php jquery ajax google-chrome

我想为我的php webapp创建一个自动填充文本字段。

用户可以在Textfield中输入一些文本,“onkeyup”事件会启动Ajax异步请求。我的php文件返回一个带有元素的json对象,这些元素与输入的文本匹配。 我将可能的条目放入Datalist中。

用firefox工作得很好 - 但不是google Chrome?!

神秘: - 如果我调试了Chrome版本,则每次触发事件后,源中的Datalist都是正确的。 =>但“Datalist popup”只显示1个条目?!

以下是一些代码:

<input  id="inputx" list="dliste"                       onkeyup="search()"/>ich</button>
<datalist id="dliste"></datalist>

    function search(){
        var text = $('#inputx').val();
        if(text=='')
            return;

        $.ajax({
              url: "functions/autoHandler.php", 
              type: "POST",
              dataType: 'json',
              data: "search="+text, 
              success: function(data){
                  $('#dliste').html('');                     

                  for(var i=0;i<data.length;i++){
                      $('#dliste').append('<option id="'+data[i][0]+'"value="'+data[i][1]+'"></option>');
                      }                 
              },
              error:function(){
                  alert('Error!');
              }   
            });
        }

问题出在哪里? 非常感谢你:))

编辑: 发现了Firefox和Chrome之间的区别。 - &gt; Firefox检查,如果datalist元素包含输入的文本 - &gt; Chrome检查,如果数据列表元素使用输入的文本

EG。选项“你好”。 用户输入“ello”: - &gt; firefox在列表中显示它 - &gt; chrome没有显示它。

是否有可能通过解决方法解决这个问题?

0 个答案:

没有答案