gpt4 book ai didi

jquery - 代码在 IE/Opera 中运行多次

转载 作者:行者123 更新时间:2023-12-01 00:33:21 28 4
gpt4 key购买 nike

我的页面出现问题,代码在 IE 和 Opera 中多次执行,但它在 FF、Chrome 和 Safari 中工作。我正在使用最新的 jQuery、验证插件和表单插件。我的代码源自以下html:

<form action="/case_study/php/survey_submit.php" id="mt_survey" method="post">
...
...
<fieldset id="submit_button_box">
<input id="submit_button" type="submit" value="Submit Case Data" />
</fieldset></form>

当我单击提交按钮时,它应该运行以下 jquery:

  $('#mt_survey').submit(function() {
if ( ($("#mt_survey").valid() == true) || confirm("Unfinished form, continue saving as temporary?")) {
$('#mt_survey').ajaxSubmit({
data: {table: "mt_data"},
target: '#messages',
success: function() {
$('#messages').fadeIn('slow');
$( 'html, body' ).animate( { scrollTop: 0 }, 0 );}
});
}
return false;
});

现在,当我第一次单击提交按钮时,这可以工作。此时,表格已清除以用于下一组数据。这是通过以下代码完成的。

  $('#clear_form').click(function() {
$("#mt_survey").resetForm();
$("#messages").replaceWith('<div id="messages"></div>');
$("#messages").hide();
$("#escort_div").hide();
$("#transport_a_div").hide();
$("#transport_l_div").hide();
$("#item_div").hide();
$("#item2_div").hide();
$("label.error").hide();
$("#correction_button").attr('disabled', 'disabled');
$("#submit_button").attr('disabled', '');
});

现在,完成后,将再次填写表单,并再次单击“提交”。但这次在 IE 和 Opera 中,它的代码会运行多次。我确信它运行了多次,因为我通过在其中放置警报进行了检查,但大多数情况下它是多次调用我的“survey_submit.php”文件并将数据插入 MySQL。有什么想法吗?它已经困扰我很长时间了,我不明白为什么会这样。

最佳答案

你真的需要使用表单插件吗?您可能会使用以下方法获得相同的效果

$('#mt_survey').submit(function() {
var $this = $(this);
if ( ($this.valid() == true) || confirm("Unfinished form, continue saving as temporary?")) {
$.ajax({
data: $this.serialize + "&table=mt_data",
success: function(response) {
$('#messages').html(response).fadeIn('slow'); //you may also need to do some processing of the response data before injecting as html
$( 'html, body' ).animate( { scrollTop: 0 }, 0 );}
});
}
return false;
});

然后调试会更容易

关于jquery - 代码在 IE/Opera 中运行多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3320705/

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