Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.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
JavaScript中的Json解析_Javascript_Php_Jquery_Json_Parsing - Fatal编程技术网

JavaScript中的Json解析

JavaScript中的Json解析,javascript,php,jquery,json,parsing,Javascript,Php,Jquery,Json,Parsing,我想使用自动完成搜索我的网站 我在PHP中使用此函数: public function searchAutoCompleteAjax(){ $keyword = Input::get('keyword'); $result = array(); if(!empty(trim($keyword))){ $mongoResult = MongoDB::instance(true)->collection("items")->like('n

我想使用自动完成搜索我的网站

我在PHP中使用此函数:

    public function searchAutoCompleteAjax(){
    $keyword = Input::get('keyword');

    $result = array();
    if(!empty(trim($keyword))){
        $mongoResult = MongoDB::instance(true)->collection("items")->like('name',$keyword)->limit(0,5)->fetch();

        if($mongoResult){
            foreach ($mongoResult as $key => $item) {
                $result[] = $item['name'];
            }
        }
    }


    echo json_encode(array("error"=>0,"message"=>"Success","result"=>$result));
}  
我在这行得到了5条关于这个代码的查询

$mongoResult = MongoDB::instance(true)->collection("items")->like('name',$keyword)->limit(0,5)->fetch(); 
现在我想在JavaScript中使用这5个查询

这是我的JavaScript代码:

$(函数(){
风险值货币=[
{value:'value-1'},
{value:'value-2'},
{value:'value-3'},
{value:'value-4'},
{value:'value-5'},
];
//设置从数组中提取的自动完成函数
$(“#搜索框”)。自动完成({
查找:货币,
});

}); 大多数浏览器都支持使用JSON.parse(),可以按如下方式使用

var json = '{"result":true,"count":1}';
var obj = JSON.parse(json);
但是,对于那些没有的,您可以使用jQuery方法。 为了获得最佳效果,请使用以下方法

var json = '{"result":true,"count":1}';
var obj = JSON && JSON.parse(json) || $.parseJSON(json);
在解析为JSON之后,您可以使用obj作为数组并从中获取数据。例如,要获取json中的第一个条目,请使用obj[0].fieldName

比如说,

var text = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';

obj = JSON.parse(text);
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;

请参阅以获取更多参考。

我没有看到jQuery UI自动完成的
查找:
选项。您使用的是不同的自动完成小部件吗?jQuery UI自动完成中的选项是
来源:
。文档清楚地解释了如何将其与JSON一起使用。您想知道如何将json解析为对象还是如何在解析的json中搜索某些内容?@Barmar$(“#搜索框”).autocomplete({lookup:currences,});谢谢分享,但是如何在我的javascript代码中应用呢?