Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将循环数组值从PHP传递到JavaScript&;JQuery_Php_Jquery - Fatal编程技术网

将循环数组值从PHP传递到JavaScript&;JQuery

将循环数组值从PHP传递到JavaScript&;JQuery,php,jquery,Php,Jquery,我试图在我的web应用程序中创建一个搜索框,并使用ajax post向我的服务器发出请求。我的问题是: 是否可以将循环数组值从PHP发送到我的JavaScript? 我想从我的服务器获取所有结果 客户端:Ajax POST请求 <script type="text/javascript"> $(document).ready( function() { $.ajax({ type: "POST", url: "searchPlaces.php",

我试图在我的web应用程序中创建一个搜索框,并使用ajax post向我的服务器发出请求。我的问题是:

是否可以将循环数组值从PHP发送到我的JavaScript? 我想从我的服务器获取所有结果

客户端:Ajax POST请求

<script type="text/javascript">
$(document).ready( function() {
   $.ajax({
       type: "POST",
       url: "searchPlaces.php",
       data: { searchInput: form.searchTxtId.value },
       success: function (result)
       {
            // Get the search result
       }
   });
});
</script>
success
回调中,您可以迭代
result.results
,其中包含一个对象,该对象的列名是查询中的属性

success: function(result) {
    $.each(results, function(i, row) {
        console.log(row.name, row.address);
    })
}
建议在
$.ajax({…})中使用
数据类型:“json”
参数,以避免对响应类型进行不必要的猜测

如果SQL结果集中的列数超过了要转发给客户端的列数,可以在循环中添加自定义数组:

$results[] = array('name' => $row['name'], 'address' => $row['address']);

是,您可以返回json字符串:

$.ajax({
       type: "POST",
       dataType: 'json', // return type is json ;
       url: "searchPlaces.php",
       data: { searchInput: form.searchTxtId.value },
       success: function (result)
       {
            $.each($result,function(index, value){
                 // use params
            } 
       }
   });

在php方面,您使用的是

可能重复的HTML和JavaScript注释,无法以这种方式混合匹配;如果您要在JavaScript中添加占位符注释,它可能应该是JavaScript注释。谢谢您的详细回答。
$results[] = array('name' => $row['name'], 'address' => $row['address']);
$.ajax({
       type: "POST",
       dataType: 'json', // return type is json ;
       url: "searchPlaces.php",
       data: { searchInput: form.searchTxtId.value },
       success: function (result)
       {
            $.each($result,function(index, value){
                 // use params
            } 
       }
   });