form:remote =>是的,不在IE中工作?

时间:2011-02-06 11:59:47

标签: ruby-on-rails-3

- form_for(@post, :remote => true, :id => 'post_form') do |f|

在FF和Chrome中按预期工作,但IE只是正常处理提交操作,没有任何ajax请求。

在互联网的其他部分没有真正看到这方面的任何信息所以我想我以某种方式做错了什么。我已经使用了默认的rails.js和the github page

中的jquery版本

2 个答案:

答案 0 :(得分:5)

好吧,我不知道为什么默认的rails版本在IE上对我不起作用,但是我写了这个解决方法:

if ($.browser.msie) {
    var form = $('form#new_post');
    form.find('input#post_submit').bind('click', function(){
        var data = form.serializeArray();
        $.ajax({url: '/posts', type: 'POST', data: data});
        return false
    });
}

现在它正常工作了。如果这实际上是Rails的一个问题,不应该包含在rails.js中,而不是我以某种方式做过的事情吗?

答案 1 :(得分:1)

在我们的Rails 3应用程序中,标记为data-remote的表单在我们升级到jquery-rails 1.0.19之后不再变成AJAX表单。 IE7无法加载jquery.js - 目前jQuery版本1.7.1似乎存在问题。在降级到jquery-rails 1.0.18后,问题再次消失。