下面的提交绕过了javascript验证。是因为onclick甚至还是我错过了什么?
由于
FORM
<form name="myprofile" action="do_update" method="post" onsubmit="return validate_submission(this.name)">
<input type="text" id="text_fullname" name="text_fullname" value="" maxlength="100" />
<div id="submit_button" onclick="document.myprofile.submit()">SUBMIT</div>
</form>
JS
function validate_submission(formname)
{
alert(formname); return false;
}
答案 0 :(得分:2)
使用onclick
并不是因为您正在使用form_ref.submit()
提交表单而不触发submit
事件。
您的选择:
submit()
)。这是最好的选择。它将显示在屏幕阅读器表单模式中。它可以选项卡。如果没有打开JS,它将起作用。submit()
之前检查结果。答案 1 :(得分:0)
添加额外的提交脚本,并从div中调用...
<script>
function validate_submission(formname)
{
var is_valid = false;
if (formname == 'myprofile')
{
is_valid = true;
}
perform_submit(formname, is_valid);
}
function perform_submit(formname, is_valid)
{
if (is_valid === true)
{
document.myprofile.submit()
}
else
{
alert('Invalid');
}
}
</script>
<form name="myprofile" action="do_update" method="post" onsubmit="return validate_submission(this.name)">
<input type="text" id="text_fullname" name="text_fullname" value="" maxlength="100" />
<div id="submit_button" onclick="validate_submission('myprofile')">SUBMIT</div>
</form>
</body>