在jquery中更改表单值后触发表单提交

时间:2017-12-14 08:55:46

标签: javascript jquery forms

当我单击“下一页”按钮(在表单中标记为>>)时,我可以在jquery中更改表单输入的值。但是在此之后我无法收到表格提交。

我尝试了以下4种方式:

1. $("form#submit").submit();
2. $("submit").submit();
3. $("#submit").submit();
4. $("form:first").submit();

下面列出了jquery和html表单代码。你能看一下并指出我犯了什么错误吗?非常感谢。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$.urlParam = function(name){
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (results==null){
   return null;
}
else{
   return decodeURI(results[1]) || 0;
}
}   


$("#reset").click(function(){
$("#semail").val("");
$x = $.urlParam('id');
$("#all").load("contactlist.php?id=" + $.urlParam('id'));
    //$("#all").load('contactlist.php?id=1');
    event.preventDefault();
    location.reload(true);
});

$("#nextpage").click(function(){
$page = $("#spage").val();
var newValue = parseInt(parseFloat($page)) + 1;
$("#spage").val(newValue);
$("form#submit").submit();

});
});
</script>

表单HTML是

<form name="search" id="search" action="/projects/mauto/contactlist.php" method="GET">
Email: <input type='text' id='semail' name='semail' size="50" value=''>
Page: <input type='text' id='spage' name='spage' size="3" value='1'>
<input type='hidden' name='id' value='1'>
<input id="submit" name="submit" type="button" value="Search Enquiry">               
<input type="button" id="reset" name="reset" value="Clear">
<input id="nextpage" type="button" value=">>">
</form>

1 个答案:

答案 0 :(得分:0)

尝试

$("form#search")[0].submit();代替$("form#search").submit();并尝试在此之前调用ev.preventDefault()