jQuery AJAX类型jsonp,返回格式错误的JSON?

时间:2014-07-29 15:54:22

标签: javascript jquery ajax json

$('#rn_s').keyup(function() {
    var rn = $('#rn_s').val();

    if(rn.length == 9) {
        $.ajax({
            url: 'http://routingnumbers.info/api/data.json?rn=' + rn,
            type: 'GET',
            dataType: 'jsonp', 
            success: function(result) {
                console.log(result);
            }
        });
    }
});

然后它返回:

Resource interpreted as Script but transferred with MIME type text/plain

然后返回的内容为Object {}

如何访问这些值?

2 个答案:

答案 0 :(得分:1)

似乎对我有用。我创建了一个小提琴,使用chrome和最新版本的jQuery(不是v2)。

这基本上就是你所拥有的,减去keyUp事件:

var rn = 122242597;

$.ajax({
    url: 'http://routingnumbers.info/api/data.json?rn=' + rn,
    type: 'GET',
    dataType: 'jsonp',
    success: function (result) {
        console.log(result);
        $('#customerName').text(result.customer_name);
        $('#address').text(result.address);
        $('#zipCode').text(result.zip);
    } });

然后在你的HTML中:

<div>
    <span id="customerName"></span>
</div>
<div>
    <span id="address"></span>
</div>
<div>
    <span id="zipCode"></span>
</div>

查看此fiddle以获取有效工作示例。显然,您的HTML会有所不同,但访问返回的属性并将它们分配给您的UI应该是相似的。

答案 1 :(得分:0)

您是否查看了该API的文档?该调用返回json个对象。

http://www.routingnumbers.info/api/data.html

要访问这些值,请查看API文档以获取值名称。例如,要获取结果的地址:

var address = result.address