无法通过rails ajax事件更改发送数据?

时间:2018-04-06 14:15:44

标签: ruby-on-rails ajax

从这个wiki开始,事件ajax:beforeSend有两个参数[xhr,settings],但实际上我将它们记录为显示未定义。

HTML code:

<%=link_to 'Save', @article, remote: true, method: :put, id: 'save' %>

JavaScript代码:

$('#save').on('ajax:beforeSend', function (event, xhr, settings) {
  console.log(xhr) // => undefined
  console.log(settings) // => undefined
}

Rails版本:5.1.3

2 个答案:

答案 0 :(得分:0)

尝试改变 $('#save').on($('#save').bind(

答案 1 :(得分:0)

如果您使用的是Rails 5.1,则rails-ujs会替换jquery-ujs,其API会略有不同。而是将xhrsettings作为附加参数发送,可以在event.detail中找到它们作为数组的第一个和第二个元素。