Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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
Jquery FCC数据回调上的getJSON不工作?_Jquery_Json_Asp.net Mvc 3 - Fatal编程技术网

Jquery FCC数据回调上的getJSON不工作?

Jquery FCC数据回调上的getJSON不工作?,jquery,json,asp.net-mvc-3,Jquery,Json,Asp.net Mvc 3,我得到了一个成功的回复,但我不完全理解如何循环使用我得到的数据。我在成功回调中输入了警报,但没有调用。以下是标记和脚本: <input type="text" name="searchValue" id="searchValue"/> <input type="button" name="btnGetLicenes" value="Get Licenses" id="btnGetLicenses"/> <div id="Licenses"></div&g

我得到了一个成功的回复,但我不完全理解如何循环使用我得到的数据。我在成功回调中输入了警报,但没有调用。以下是标记和脚本:

<input type="text" name="searchValue" id="searchValue"/>
<input type="button" name="btnGetLicenes" value="Get Licenses" id="btnGetLicenses"/>
<div id="Licenses"></div>
<script>

    $.getJSON("http://data.fcc.gov/api/license-view/basicSearch/getLicenses?searchValue=Verizon Wireless&format=jsonp&callback=?",
        function (data) {
            $.each(data.License, function (i, lic) {
                $('#Licenses').append('<p>' + lic.licName + '</p>');          
                alert("hello"); //This is not called.

            });
        });

</script>

$.getJSON(“http://data.fcc.gov/api/license-view/basicSearch/getLicenses?searchValue=Verizon 无线&format=jsonp&callback=?“,
功能(数据){
$.each(data.License、function(i、lic){
$(“#许可证”).append(“”+lic.licName+”

”); 警报(“hello”);//未调用此命令。 }); });

在上述场景中,我没有使用搜索文本框,我只是对Verizon Wireless进行硬编码以进行测试。

您有一个中间
数据.Licenses.License
节点,它表示您可以循环通过的集合:

$.getJSON('http://data.fcc.gov/api/license-view/basicSearch/getLicenses?searchValue=Verizon+Wireless&format=jsonp&jsonCallback=?',
    function (data) {
        $.each(data.Licenses.License, function (i, lic) {
            $('#Licenses').append('<p>' + lic.licName + '</p>');          
        });
    }
);
$.getJSON('http://data.fcc.gov/api/license-view/basicSearch/getLicenses?searchValue=Verizon+无线&format=jsonp&jsonCallback=?',
功能(数据){
$.each(data.Licenses.License、function(i、lic){
$(“#许可证”).append(“”+lic.licName+”

”); }); } );
另外,
$alert
不是一个可以调用的函数。也许你的意思是提醒

还请注意,根据示例,允许您设置JSONP回调名称的参数是
jsonCallback
,而不是
callback

另外,不要忘记对查询字符串参数进行URL编码,否则您可能会从服务器获得意外/错误行为:
searchValue=Verizon Wireless
应该是
searchValue=Verizon+Wireless


最后,让我们来看看这一行动。

是的,很抱歉。我是说警惕。我用我的代码替换了我的代码,但仍然没有得到任何输出。我也是新手,如果你不介意的话,你能解释一下中间节点是什么意思吗?@Xaisoft,看看服务器发送的JSON。把它贴上去格式化。您将看到有一个对象,其中包含一个名为
Licenses
的属性,该属性本身是一个嵌套对象,其中包含一个名为
License
的属性,该属性是一个javascript数组。和$。每个操作符都在javascript数组上工作。谢谢。在我将jsonp回调更改为jsonCallback后,我使它开始工作,但我有点困惑,因为在他们的文档中,他们的示例调用使用回调,而不是jsonCallback。@Xaisoft,是的,他们的示例是错误的:-)它完全与前面几段中所写的内容相矛盾,在这些段落中,他们讨论了
jsonCallback
参数。好吧,当你雇佣不称职的人来写文档时就会发生这种情况:-)