当我点击提交时,它会直接进入另一个页面
when I click submit, it goes straight onto another page
我的表单在不希望的时候提交到另一个页面。当前页面称为create_session.php
如果满足所有验证和回发要求,我希望提交表单,即使在那之后,当确认框出现时,用户也需要单击"确定"。但这种事从来没有发生过。当用户点击提交按钮时,它会直接将用户带到另一个页面"QandATable.php",它不关心validation()、postback()和确认框。
所以我想知道的是,当用户点击提交按钮时,我如何获得它,以便它在进入下一页之前检查验证()、回发()和确认框(showConfirm())。
我认为问题出在提交按钮和表单操作上。以下是表格:
<form action="QandATable.php" method="post" id="sessionForm">
<p><input type="text" id="txtMarks" name="textMarks" onkeypress="return isNumberKey(event)" maxlength="5" /><br/><span id="marksAlert"></span></p>
<p><strong>Room:</strong> <input type="text" id="room" name="roomChosen" value="<?php echo $roomChosen; ?>" />
<br/><span id="roomAlert"></span></p> <!-- Enter Room here-->
<p><input class="questionBtn" type="submit" value="Prepare Questions" name="prequestion" onClick="myClickHandler()"/></p>
</form>
下面是javascript点击处理程序,它在其中检查validation()和postback(),如果两者都满足,则会显示Confirm()。
function myClickHandler(){
if(validation()){
postback(function(message) {
if (message == "")
showConfirm();
});
}
}
您需要从onClick
处理程序返回false
以阻止表单提交。
您需要确保在单击提交按钮时没有应用默认操作。在这种情况下,默认操作是提交表单。
尝试添加return false;
,如
<input class="questionBtn" type="submit" value="Prepare Questions" name="prequestion" onClick="myClickHandler(); return false;"/>
两个更改;您需要传递函数,而不是函数的返回值,并且需要返回false
:
<input class="questionBtn" type="submit" value="Prepare Questions" name="prequestion" onClick="myClickHandler" />
------------------------------------------------------------------------------------------------------------^ here
和
function myClickHandler(){
if(validation()) {
postback(function(message) {
if (message == "")
showConfirm();
});
}
return false;
}
相关文章:
- 在另一个可观察量完成后触发第二个表单提交单击
- 单击输入时,将提交按钮设置为另一个
- 使用 Ajax 将 Javascript 变量提交到另一个 PHP 文件
- 使用jquery进度条重定向到表单提交后的另一个页面
- 将JavaScript变量发送到另一个页面,以便与表单一起提交
- 使用angularjs将HTML表单数据从页面提交到另一个HTML页面
- 将所有表单克隆到另一个隐藏元素的不同表单并提交
- 提交输入类型=“;图像“;到另一个servlet时,未能返回任何参数
- 将信息从一个servlet提交到另一个servlet
- angular js如何在提交一个表单时验证另一个表单
- javascript表单提交一个值应该大于另一个值x>y
- 使用字段值填充提交时的另一个复选框
- 如何在提交之前将另一个字符串附加到表单的值
- 使用javascript或jquery从另一个表单中使用它所在的URL访问,填写和提交表单
- 如何计算两个输入表单字段并将值放入另一个表单中,而无需使用 jquery 提交表单
- jQuery 在另一个函数正常时提交
- 在另一个表单中提交表单
- 在表单提交后,无法使用 mvc razor 中的 ajax 从其中的另一个分部视图刷新分部视图
- 如何在提交html或javascript后打开另一个提交表单
- NetSuite脚本更新一个行级别字段从另一个提交后