Jquery 停止提交表单按钮
如果两个字段不相等,我试图阻止drupal表单提交。我有两个字段,输入您的电子邮件和确认电子邮件,这两个字段在允许表单提交之前都需要匹配。下面的代码位于$(document.read(function()调用)中。如何执行此操作Jquery 停止提交表单按钮,jquery,forms,drupal-7,submit,Jquery,Forms,Drupal 7,Submit,如果两个字段不相等,我试图阻止drupal表单提交。我有两个字段,输入您的电子邮件和确认电子邮件,这两个字段在允许表单提交之前都需要匹配。下面的代码位于$(document.read(function()调用)中。如何执行此操作 $('#webform-client-form-27 #edit-submitted-confirm-email-address').blur(function() { if ($('#edit-submitted-email-address').val()
$('#webform-client-form-27 #edit-submitted-confirm-email-address').blur(function() {
if ($('#edit-submitted-email-address').val() == $('#edit-submitted-confirm-email-address').val() ) {
$('#edit-submitted-email-address').css('border', '1px solid' );
$('#edit-submitted-email-address').css('border-color', '#848484 #c1c1c1 #e1e1e1' );
$('#edit-submitted-confirm-email-address').css('border', '1px solid' );
$('#edit-submitted-confirm-email-address').css('border-color', '#848484 #c1c1c1 #e1e1e1' );
}
else {
$('#edit-submitted-email-address').css('border', '2px solid red');
$('#edit-submitted-confirm-email-address').css('border', '2px solid red');
}
});
其实很简单:
$('#myForm').on('submit', function(){
if ($('#theAddress').val() != $('#theConfirmation').val()) {
return false;
}
return true;
});
或者,如果您只有这些要检查,您可以将其压缩:
$('#myForm').on('submit', function(){
return $('#theAddress').val() == $('#theConfirmation').val();
});
为了详细说明,在添加处理程序时会使用返回值。如果返回true
,javascript将继续并在submit
事件中提交表单。如果返回false
它将停止。
<form onsubmit="return validateInfoFunction()">
<input type="text" id="email1"/>
<input type="text" id="email2"/>
<input type="submit"/>
</form>
<script type="text/javascript">
function validateInfoFunction(){
if(document.getElementById("email1").value == document.getElementById("email2").value)
{
return true;
}
else return false;
}
</script>
函数validateInfo函数(){
if(document.getElementById(“email1”).value==document.getElementById(“email2”).value)
{
返回true;
}
否则返回false;
}
在onsubmit事件中返回false将停止表单提交。希望这有帮助。通过匹配两个文本框的$form\u state值,您可以直接使用form\u name\u validate函数来完成此操作,如果值不匹配,您可以抛出form\u set\u error函数。这样做的问题是,drupal无法执行此操作检查剩余值并运行其常规检查。