gpt4 book ai didi

jQuery 表单提交。停止页面刷新仅适用于最新的浏览器

转载 作者:行者123 更新时间:2023-12-01 03:29:07 25 4
gpt4 key购买 nike

使用 jQuery 1.4 来执行此操作。

将表单添加到 body 标记中,表单本身没有什么特别之处:

$(function() {
$('body').prepend('<form name="frmSample" id="frmSample"><input class="btn" type="submit" value="SIGN UP" /></form>');
});

我使用以下方式提交表单:

$('#frmSample').live('submit', function() {
var formdata = $(this).serialize();

$.ajax({
type: 'POST',
url: 'http://www.example.com/Values.jsp',
data: formdata,
success:function() {
submit_success();
}
});
return false
});

在最新的浏览器(Firefox 3.5、Safari 4)上,这可以正常工作。一旦我降到 FF 3.0 及以下或 IE 7 及以下,此问题就会停止。

我现在有点陷入困境。我一直在寻找一些东西,但只能找到除 return false 或 event.preventDefault() 之外的任何内容。

所以想看看我是否在这里遗漏了一些小东西,或者走错了方向。

最佳答案

我会比 stopPopagation 更进一步:

$('#frmSample').live('submit', function(e) {  
stopEvent(e);
....etc...etc

以及 stopEvent 的代码:

function stopEvent(event) {
event.preventDefault();
event.stopPropagation();
if ($.browser.msie) {
event.originalEvent.keyCode = 0;
event.originalEvent.cancelBubble = true;
event.originalEvent.returnValue = false;
}
}

从这里:http://www.openjs.com/articles/prevent_default_action/

returnValue 和 PreventDefault() 方法

这满足了我们的需要 - 但我们不能依赖 return false 方法来阻止默认操作。提供此代码将退出该函数 - 因此,如果函数中有更多要做的事情,则无法使用此代码。在我遇到的大多数情况下, return false 就足够了,但在某些领域,我们需要更激烈的东西。

在 Google 中输入以下内容以获取更多信息:

preventDefault stopPropagation cancelBubble

关于jQuery 表单提交。停止页面刷新仅适用于最新的浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2118560/

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