您的位置:首页 > Web前端 > JQuery

采用JQuery提交表单的一个小小问题

2010-04-03 12:35 274 查看
今天在复习的时,发现一个问题:在某种场景下使用JQuery的时(不是用
$.ajax请求

),表单form的action属性会丢失,导致form提交不到后台去。还是直接看代码吧:

<body>
<form id="loginForm" name="loginForm">
userName: <input id="userName" name="userName"><br/>
password: <input type="password" id="password" name="password" /><br/>
<button id='login'>login</button><input type="reset" name="reset" value="reset"/>
</form>
</body>


采用JQuery提交表单的代码:

$(document).ready(function(){
$('#login').click(function(){
var userName = $('#userName').val();
var password = $('#password').val();
// .............
$('#loginForm').action = 'login.action';
$('#loginForm').submit();
});
});


此时提交表单后浏览器的url为: http://localhost:8080/useJQuery/?userName=zhangsan&password=psswd
很明显,form表单的action属性设置无效。尝试了很久,怀疑是JQuery的一个Bug吧。于是准备采用原始的土办法来试试,代码为:

window.onload = function()
{
document.getElementById('login').onclick = function()
{
document.loginForm.action = 'login.action';
document.loginForm.submit();
}
}


这样表单却成功的提交了。

不知道算不算是JQuery的Bug吧?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: