0

我有一个带有 jquery-ujs 的 rails 3 应用程序,我想知道是否可以在运行时动态指定 ajax 调用的数据类型。通过绑定 ajax 事件,我的链接都是不显眼的:

item.bind("ajax:beforeSend", function(e, request, settings) {
    ...
});

但不幸的是,默认数据类型是 json,我想知道是否可以在 ajax 调用之前更改它。我知道我可以这样做,在每个链接的基础上:

<%= link_to('My Link', path,
        :remote => true,
        :method => :put,  
        :id => 'my-link',
        'data-type' => 'html', 
        :class => 'button') %>

但这不是很干燥,因为我必须在每个链接上都这样做。

我发现我可以这样全局设置这个字段:

$.ajaxSetup({ dataType: 'html' });

但我想知道是否有人知道如何在 bind 方法中或在项目本身上执行此操作?

唯一想到的(在我写这篇文章时)是将数据类型属性添加到 JS 中的标记,但我不确定在 JS 执行时是否已经设置了 ajax。

有任何想法吗?

4

1 回答 1

0

对我来说,一种快速而肮脏的方式:将后缀添加到 url:

"#{link_to some_path}.html"
"#{link_to some_path}.js"
于 2012-04-10T07:41:27.897 回答