0

我正在通过浏览器控制台调用 JSON 请求,并且能够获得预期的响应。这是电话:

$.get("/settings/getstates?account%5Baddresses_attributes%5D%5B0%5D%5Bcountry%5D=US", function(data){
  console.log(data);
    var items = [];
    $.each(data, function(key, val) {
    items.push(val.name);
  });
    alert(items);   
}, 'json')

但是,当我尝试将调用绑定到表单菜单中的选择器时,出现错误:

Uncaught TypeError: Object json has no method 'apply'

这是与 AJAX 绑定相同的调用:

$(document).ready(function() {

    $("#country").bind('ajax:success', function(evt, data, status, xhr){
      console.log(data);
        var items = [];
        $.each(data, function(key, val) {
        items.push(val.name);
      });
        alert(items);
    }, 'json')

});

这是在 Rails 3.2 中——不确定这是否重要?

4

1 回答 1

0

我是 JS/jQuery 等的新手,所以这可能是一个愚蠢的错误。我找到了解决方法。我只需要删除最后一行中的“json”引用,结果是:

$(document).ready(function() {

    $("#country").bind('ajax:success', function(evt, data, status, xhr){
      console.log(data);
        var items = [];
        $.each(data, function(key, val) {
        items.push(val.name);
      });
        alert(items);
    });

});
于 2012-04-17T21:41:40.197 回答