Javascript 使用jQuery从JSON访问数据

Javascript 使用jQuery从JSON访问数据,javascript,jquery,json,Javascript,Jquery,Json,需要代码方面的帮助以提供此JSON响应的迭代: JSON响应: [{"id":"1","FK_country":"USA","FK_state":"Arizona","FK_city":"Phoenix","zip":"85001","update_by":"SYSTEM","update_when":"0000-00-00 00:00:00"}, {"id":"2","FK_country":"USA","FK_state":"Arizona","FK_city":"Phoenix","zip

需要代码方面的帮助以提供此JSON响应的迭代:

JSON响应:

[{"id":"1","FK_country":"USA","FK_state":"Arizona","FK_city":"Phoenix","zip":"85001","update_by":"SYSTEM","update_when":"0000-00-00 00:00:00"},
{"id":"2","FK_country":"USA","FK_state":"Arizona","FK_city":"Phoenix","zip":"85002","update_by":"SYSTEM","update_when":"0000-00-00 00:00:00"},
{"id":"3","FK_country":"USA","FK_state":"Arizona","FK_city":"Phoenix","zip":"85003","update_by":"SYSTEM","update_when":"0000-00-00 00:00:00"}]
我在以下建议的帮助下更新的代码是

function test3 () 
{

    var myCriteria = "";

    var key = "mykey";

    myCriteria = $( "#city" ).val();

    $('#myTestDiv').empty().append(myCriteria);

    var myDataRequest = $.ajax({
                url: 'ajx_zip.php',
                type: 'POST',
                dataType: 'json',
                data: {city:myCriteria, api_key:key},
                success: function(myData)
                {
                    alert( "Data Request Success!" );

                    $('#zip')
                    .find('option')
                    .remove()
                    .end();

                    $( "#myTestDiv" ).append( "<p>" + myData + "</p>" );

                    var myNewData = $.parseJSON(myData);

                    $( "#myTestDiv" ).append( "<p>" + myNewData + "</p>" );

                    $.each(myNewData, function(i, value) 
                    {
                    $('#zip').append($('<option></option>').val(value.FK_city).html(value.FK_city));
                    });
                }

        });

    myDataRequest.fail(function(jqXHR, textStatus)
    {
    if (jqXHR.status === 0)
    {
        alert('Not connect.n Verify Network.');
    }
    else if (jqXHR.status == 404)
    {
        alert('Requested page not found. [404]');
    }
    else if (jqXHR.status == 500)
    {
        alert('Internal Server Error [500].');
    }
    else if (exception === 'parsererror')
    {
        alert('Requested JSON parse failed.');
    }
    else if (exception === 'timeout')
    {
        alert('Time out error.');
    }
    else if (exception === 'abort')
    {
        alert('Ajax request aborted.');
    }
    else
    {
        alert('Uncaught Error.n' + jqXHR.responseText);
    }
    });

 }
替换此项:

<SELECT id="city" NAME="city" onselect="AddZipOptions();">
替换此项:

<SELECT id="city" NAME="city" onselect="AddZipOptions();">
替换此项:

<SELECT id="city" NAME="city" onselect="AddZipOptions();">
替换此项:

<SELECT id="city" NAME="city" onselect="AddZipOptions();">

尝试将其添加到ajax参数中

$.ajax({
                  datatype: "json",
    });
在每次调用之前,尝试在success函数中调用它

       var newMyData = $.parseJSON(myData);

然后使用新变量

尝试将其添加到ajax参数中

$.ajax({
                  datatype: "json",
    });
在每次调用之前,尝试在success函数中调用它

       var newMyData = $.parseJSON(myData);

然后使用新变量

尝试将其添加到ajax参数中

$.ajax({
                  datatype: "json",
    });
在每次调用之前,尝试在success函数中调用它

       var newMyData = $.parseJSON(myData);

然后使用新变量

尝试将其添加到ajax参数中

$.ajax({
                  datatype: "json",
    });
在每次调用之前,尝试在success函数中调用它

       var newMyData = $.parseJSON(myData);

然后使用新变量

这个问题的答案已经由@lazel和@dancer两人解决了,之前的一篇帖子也在这里找到了。。。JSON响应已经按照一位评论员的建议进行了解析,但返回的数据已经作为对象中的对象进行了处理

已解决并使用此更新的代码

希望这能帮助其他JQuery新手。谢谢你的贡献者

function slct_zip () 
    {

        var myCriteria = "";

        var key = "yourAPIkeyhere";

        myCriteria = $( "#city" ).val();

        var myDataRequest = $.ajax({
                    url: 'yourphpqueryscriptinJSON.php',
                    type: 'POST',
                    dataType: 'json',
                    data: {city:myCriteria, api_key:key},
                    success: function(myData)
                    {
                        alert( "Please Select Zip" );

                        $('#zip')
                        .find('option')
                        .remove()
                        .end();

                        for (var i=0;i<myData.length;i++) 
                            {
                            $( "#zip" ).append($('<option></option>').val(myData[i].zip).html(myData[i].zip));
                            }
                    }

            });

        myDataRequest.fail(function(jqXHR, textStatus)
        {
        if (jqXHR.status === 0)
        {
            alert('Not connect.n Verify Network.');
        }
        else if (jqXHR.status == 404)
        {
            alert('Requested page not found. [404]');
        }
        else if (jqXHR.status == 500)
        {
            alert('Internal Server Error [500].');
        }
        else if (exception === 'parsererror')
        {
            alert('Requested JSON parse failed.');
        }
        else if (exception === 'timeout')
        {
            alert('Time out error.');
        }
        else if (exception === 'abort')
        {
            alert('Ajax request aborted.');
        }
        else
        {
            alert('Uncaught Error.n' + jqXHR.responseText);
        }
        });

     }
函数slct\u zip()
{
var myCriteria=“”;
var key=“yourAPIkeyhere”;
myCriteria=$(“#城市”).val();
var myDataRequest=$.ajax({
url:'yourphpqueryscriptinJSON.php',
键入:“POST”,
数据类型:“json”,
数据:{城市:我的标准,api_key:key},
成功:函数(myData)
{
警报(“请选择Zip”);
$('zip')
.find('选项')
.删除()
.end();

对于(var i=0;i,这个问题的答案由@lazel和@dancer解决,前面的帖子在这里找到了……JSON响应已经按照一位评论员的建议进行了解析,但返回的数据已经作为对象中的对象进行了处理

已解决并使用此更新的代码

希望这将帮助其他JQuery新手。感谢您的贡献者

function slct_zip () 
    {

        var myCriteria = "";

        var key = "yourAPIkeyhere";

        myCriteria = $( "#city" ).val();

        var myDataRequest = $.ajax({
                    url: 'yourphpqueryscriptinJSON.php',
                    type: 'POST',
                    dataType: 'json',
                    data: {city:myCriteria, api_key:key},
                    success: function(myData)
                    {
                        alert( "Please Select Zip" );

                        $('#zip')
                        .find('option')
                        .remove()
                        .end();

                        for (var i=0;i<myData.length;i++) 
                            {
                            $( "#zip" ).append($('<option></option>').val(myData[i].zip).html(myData[i].zip));
                            }
                    }

            });

        myDataRequest.fail(function(jqXHR, textStatus)
        {
        if (jqXHR.status === 0)
        {
            alert('Not connect.n Verify Network.');
        }
        else if (jqXHR.status == 404)
        {
            alert('Requested page not found. [404]');
        }
        else if (jqXHR.status == 500)
        {
            alert('Internal Server Error [500].');
        }
        else if (exception === 'parsererror')
        {
            alert('Requested JSON parse failed.');
        }
        else if (exception === 'timeout')
        {
            alert('Time out error.');
        }
        else if (exception === 'abort')
        {
            alert('Ajax request aborted.');
        }
        else
        {
            alert('Uncaught Error.n' + jqXHR.responseText);
        }
        });

     }
函数slct\u zip()
{
var myCriteria=“”;
var key=“yourAPIkeyhere”;
myCriteria=$(“#城市”).val();
var myDataRequest=$.ajax({
url:'yourphpqueryscriptinJSON.php',
键入:“POST”,
数据类型:“json”,
数据:{城市:我的标准,api_key:key},
成功:函数(myData)
{
警报(“请选择Zip”);
$('zip')
.find('选项')
.删除()
.end();

对于(var i=0;i,这个问题的答案由@lazel和@dancer解决,前面的帖子在这里找到了……JSON响应已经按照一位评论员的建议进行了解析,但返回的数据已经作为对象中的对象进行了处理

已解决并使用此更新的代码

希望这将帮助其他JQuery新手。感谢您的贡献者

function slct_zip () 
    {

        var myCriteria = "";

        var key = "yourAPIkeyhere";

        myCriteria = $( "#city" ).val();

        var myDataRequest = $.ajax({
                    url: 'yourphpqueryscriptinJSON.php',
                    type: 'POST',
                    dataType: 'json',
                    data: {city:myCriteria, api_key:key},
                    success: function(myData)
                    {
                        alert( "Please Select Zip" );

                        $('#zip')
                        .find('option')
                        .remove()
                        .end();

                        for (var i=0;i<myData.length;i++) 
                            {
                            $( "#zip" ).append($('<option></option>').val(myData[i].zip).html(myData[i].zip));
                            }
                    }

            });

        myDataRequest.fail(function(jqXHR, textStatus)
        {
        if (jqXHR.status === 0)
        {
            alert('Not connect.n Verify Network.');
        }
        else if (jqXHR.status == 404)
        {
            alert('Requested page not found. [404]');
        }
        else if (jqXHR.status == 500)
        {
            alert('Internal Server Error [500].');
        }
        else if (exception === 'parsererror')
        {
            alert('Requested JSON parse failed.');
        }
        else if (exception === 'timeout')
        {
            alert('Time out error.');
        }
        else if (exception === 'abort')
        {
            alert('Ajax request aborted.');
        }
        else
        {
            alert('Uncaught Error.n' + jqXHR.responseText);
        }
        });

     }
函数slct\u zip()
{
var myCriteria=“”;
var key=“yourAPIkeyhere”;
myCriteria=$(“#城市”).val();
var myDataRequest=$.ajax({
url:'yourphpqueryscriptinJSON.php',
键入:“POST”,
数据类型:“json”,
数据:{城市:我的标准,api_key:key},
成功:函数(myData)
{
警报(“请选择Zip”);
$('zip')
.find('选项')
.删除()
.end();

对于(var i=0;i,这个问题的答案由@lazel和@dancer解决,前面的帖子在这里找到了……JSON响应已经按照一位评论员的建议进行了解析,但返回的数据已经作为对象中的对象进行了处理

已解决并使用此更新的代码

希望这将帮助其他JQuery新手。感谢您的贡献者

function slct_zip () 
    {

        var myCriteria = "";

        var key = "yourAPIkeyhere";

        myCriteria = $( "#city" ).val();

        var myDataRequest = $.ajax({
                    url: 'yourphpqueryscriptinJSON.php',
                    type: 'POST',
                    dataType: 'json',
                    data: {city:myCriteria, api_key:key},
                    success: function(myData)
                    {
                        alert( "Please Select Zip" );

                        $('#zip')
                        .find('option')
                        .remove()
                        .end();

                        for (var i=0;i<myData.length;i++) 
                            {
                            $( "#zip" ).append($('<option></option>').val(myData[i].zip).html(myData[i].zip));
                            }
                    }

            });

        myDataRequest.fail(function(jqXHR, textStatus)
        {
        if (jqXHR.status === 0)
        {
            alert('Not connect.n Verify Network.');
        }
        else if (jqXHR.status == 404)
        {
            alert('Requested page not found. [404]');
        }
        else if (jqXHR.status == 500)
        {
            alert('Internal Server Error [500].');
        }
        else if (exception === 'parsererror')
        {
            alert('Requested JSON parse failed.');
        }
        else if (exception === 'timeout')
        {
            alert('Time out error.');
        }
        else if (exception === 'abort')
        {
            alert('Ajax request aborted.');
        }
        else
        {
            alert('Uncaught Error.n' + jqXHR.responseText);
        }
        });

     }
函数slct\u zip()
{
var myCriteria=“”;
var key=“yourAPIkeyhere”;
myCriteria=$(“#城市”).val();
var myDataRequest=$.ajax({
url:'yourphpqueryscriptinJSON.php',
键入:“POST”,
数据类型:“json”,
数据:{城市:我的标准,api_key:key},
成功:函数(myData)
{
警报(“请选择Zip”);
$('zip')
.find('选项')
.删除()
.end();


对于(var i=0;i)您遇到了什么问题?节点-选择不添加到id=zipy您需要发布更多代码,我们可以使用这些代码自己重现问题,或者我们无法提供帮助。您应该删除
var results=$.parseJSON(myData);
。jQuery已经解析了json,因为您指定了
数据类型。
。只是从PHP技巧中磨练我的jQuery-通过…var results=myData;传递数据对象…?您遇到了什么问题?节点-选择不添加到id=zipy您需要发布更多代码,我们可以使用这些代码自己重现问题,或者我们无法提供帮助。您应该删除
var results=$.parseJSON(myData);
。jQuery已经解析了json,因为您指定了
dataType
。只是从PHP技能中磨练我的jQuery-通过…var results=myData;传递数据对象,您遇到了什么问题