0

我在一些 JavaScript 中嵌入了以下 AJAX 代码:

$.ajax({
  type: 'POST',
  url: '/books',
  data: {'book[author]':tags[i].book.author, 'book[edition]':tags[i].book.edition, 'book[title]':tags[i].book.title, 'book[url]':newBookUrl},
  dataType: 'json',
  async: false,
  success: function(data){
    mapcode+=" href='javascript:lightbox("+data+")' />";
    alert(mapcode);
  },
  fail: function(){mapcode+=" href='' onclick='return false;' />";
    alert(mapcode);}
});

它调用了这个模型中的 create 方法:

  def create
    book = Book.new(params[:book])
    if (Book.find_by_url(book.url))
     book = Book.find_by_url(book.url)
    else
      book.save
    end
    book.users << current_user
    render :json => book.url
  end

由于某种原因,成功和失败回调都没有触发。否则,AJAX 似乎正在工作。新数据上传到数据库,根据 Firebug,我得到了 JSON 返回的 book.url。知道这里发生了什么吗?

4

0 回答 0