mysql结果在javascript全局数组中

时间:2013-08-24 06:45:27

标签: javascript mysql arrays

我需要在JS数组中有一个MySQL表结果,以便我可以在文本框中键入时搜索名称。我的意思是,假设我有一个带有一些名称的表,现在当请求页面时,它应该使用MYSQL中的名称列表填充div,div需要有一个输入框,当输入首字母时,下面的列表应该找到与搜索关键字匹配的名称。

为此,我认为我需要将mysql结果存储在JS数组中,以便在文本框的onkeyuponkeypress事件中,它应该从数组中搜索匹配的结果项目并仅使用这些项目填充列表。

我知道,我必须在document.ready上发出ajax请求才能从数据库中获取结果,但后来却不知道如何将其存储在数组中,然后在文本框事件中搜索结果。

1 个答案:

答案 0 :(得分:0)

你需要这样的东西:

这样的输入:

<input type="text" onkeyup="userscount('getusers.php')" name="name" /> 
<div id="shownames"></div>

这里是ajax请求的js我使用jquery:

function userscount(url)
{

        var val = $('[name="name"]').val()
        $.ajax({
                type:'post',
                data : {name: val },
                cache: false,
                url: url,
                dataType : 'json',
                success: function(resp){
                  $('#shownames').append(resp);
               }
               });


}

您可以使用ul li附加

这里是php代码(getusers.php):

<?php
if(isset($_POST['name']))
{
  $result = // execute your query 

   echo json_encode($result)
}

?>

有了这个你不需要用于搜索的js数组,你可以直接在db中搜索