jQuery自动完成不过滤但显示结果

时间:2015-02-23 13:21:26

标签: javascript php jquery json autocomplete

我只是尝试使用jQuery自动完成小部件作为实验。

我以此为例: Autocomplete | Custom Data

但是当我尝试它时,它不会过滤结果。 它只显示我输入内容时的所有结果,然后退回 - 全部'

这是我的代码:

    <script>

    var projects = <?
    while($row = mysqli_fetch_array($resultSQLJSON)){
        $resultS = unserialize(base64_decode($row['safe']));
        $resultS['login']  = $row['login'];
        $resultS['shop']   = $row['shop'];
        $resultS['sqlext'] = $row['sql_ext'];
        array_push($resultB,$resultS);
    }
  echo json_encode($resultB);
    ?>;
 $(function() {
    $( "#project" ).autocomplete({
      minLength: 0,
      source: projects,
      focus: function( event, ui ) {
        $( "#project" ).val( ui.item.label );
        return false;
      },
      select: function( event, ui ) {
        $( "#project" ).val( ui.item.shop );
        $( "#project-description" ).html( "<b>DB Name:</b> "+ui.item.db_name +"<br><b>DB IP:</b> "+ui.item.db_ip+"<br><b>DB Login:</b> "+ui.item.db_login+"<br><b>DB Pass:</b> "+ui.item.db_pass+"<br><b>Login:</b> "+ui.item.login );
        return false;
      }
    })
    .autocomplete( "instance" )._renderItem = function( ul, item ) {
      return $( "<li>" )
        .append( "<a>" + item.shop + "</a>" )
        .appendTo( ul );
    };
  });
  </script>
</head>
<body>
<input id="project">
<input type="hidden" id="project-id">
<p id="project-description"></p>


</body>

PHP while返回有效的json格式作为变量。

一切正常,当我选择一个结果时,我会得到细节和内容,只有过滤不起作用。

似乎无法确定问题所在? 任何想法?

Thx,Bert

编辑: json数据(编辑数据以确保安全;)) login有特殊字符,如&#39;

  

Dtj6V + RsYD *至

&#39;并通过?

 [
    {
        "db_ip": "XXXX",
        "db_name": "XXXX",
        "db_login": "XXXX",
        "db_port": "XXXX",
        "db_pass": "XXXX",
        "login": "XXXX",
        "shop": "XXXX",
        "sqlext": "XXXX"
    },
    {
        "db_ip": "XXXX",
        "db_name": "XXXX",
        "db_login": "XXXX",
        "db_port": "XXXX",
        "db_pass": "XXXX",
        "login": "XXXX",
        "shop": "XXXX",
        "sqlext": "XXXX"
    },
    {
        "db_ip": "XXXX",
        "db_name": "XXXX",
        "db_login": "XXXX",
        "db_port": "XXXX",
        "db_pass": "XXXX",
        "login": "XXXX",
        "shop": "XXXX",
        "sqlext": "XXXX"
    }
]

还尝试过只有&#39; shop&#39;在json数据中,因为我认为它可能是特殊字符左右,但结果相同。

0 个答案:

没有答案