gpt4 book ai didi

javascript - jQuery AJAX 数据类型 : 'script' not working on firefox

转载 作者:行者123 更新时间:2023-11-28 19:46:02 24 4
gpt4 key购买 nike

我的 jQuery 表单有以下代码:

$('form.ajax_form').on('submit', function(){
event.preventDefault();
var form_errors_space = $(this).find('.ajax_form_errors:first');
$.ajax({
type: "POST",
dataType: 'script',
url: $(this).attr('action'),
data: $(this).serialize(),
// show success response from server.
success: function(data, status, jqXHR) {
console.log(data);
console.log(status);
console.log(jqXHR);
},
// show error response from the server.
error: function(data, status, error_message) {
// error handeling here
}
});
});

代码适用于 chrome 和 safari。问题在于 Firefox,它将 AJAX 请求作为“HTML”数据类型而不是 JS/脚本发送。任何想法?

注意:我在 Ruby on Rails 4、Ruby 2.1.1 上执行此操作,由于项目特定原因,我无法使用默认的 remote: true 选项。

火狐版本:30.0

**更新:** 我也尝试覆盖内容类型和 MIME 类型,但也不起作用。

  ...
data: $(this).serialize(),
contentType: 'application/javascript',
accepts: 'text/script',
beforeSend: function( xhr ) {
xhr.overrideMimeType( "application/script; charset=x-user-defined" );
},
.....

最佳答案

将代码更改为如下所示:

$('form.ajax_form').on('submit', function(e){
e.preventDefault();

而不是:

$('form.ajax_form').on('submit', function(){
event.preventDefault();

更多information

关于javascript - jQuery AJAX 数据类型 : 'script' not working on firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24278448/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com