jQueryでフォームを検証するための簡単なスクリプトを作成しました。 は、これらは、ボタンを提出されています[キャンセル]ボタンを押すとJQuery - 予想通りにフォームが送信されない
<button type="submit" id="submitCrear" name="submitCrear">Confirm</button> ---->Cancel button
<button type="submit" value="cancelar" name="cancelar" id="btnCancelar">Cancel</button> ---->Confirm button
、フォームが検証を一切せずに送信する必要があります。 opossiteにはConfirmボタンが必要です。
これは私が理解していないことです:確認ボタンを押すと、検証プロセスは正常に開始されますが、キャンセルボタンを押すと、フォームはすべての検証が完了するまで送信されません(isValidForm変数は '真実である)。
<script type="text/javascript">
var isValidForm;
$(document).ready(function() {
$('#btnCancelar').click(function() {
$('form').submit();
});
$('#submitCrear').click(function() {
$('form').submit(function(){
return validarForm();
});
});
});
function validarForm(){
isValidForm = true;
$("input:text").each(function(i) {
if(this.value == ''){
if (!$("#errorMessage"+i).length > 0)
addErrorMessage(this, i, '*REQUERIDO');
isValidForm = false;
}else{
removeErrorMessage(this, i);
}
});
$("input:password").each(function(i) {
if(this.value == ''){
if (!$("#errorMessage"+(i+999)).length > 0)
addErrorMessage(this, (i+999), '*REQUERIDO');
isValidForm = false;
}else{
if(($(this).attr('id') == 'rePassword_r') && ($(this).val() != $("#password_r").val())){
if ($("#errorMessage"+(i+999)).length > 0){
removeErrorMessage(this, (i+999));
addErrorMessage(this, (i+999), 'The password doesn't match.');
}
isValidForm = false;
}else{
removeErrorMessage(this, (i+999));
}
}
});
return isValidForm;
}
function addErrorMessage(element, indice, mensaje){
...
}
function removeErrorMessage(element, indice){
...
}
</script>
確認プロセスが開始されても[キャンセル]ボタンを使用してフォームを送信するにはどうすればよいですか?
ありがとうございます!あなたの二つのボタンと、次のjQuery
$(document).ready(function() {
$('#btnCancelar').click(function() {
$('form').submit();
});
$('#submitCrear').click(function() {
$('form').submit(function(){
return validarForm();
});
});
});
を持って
おかげさまでChris!それは働いている! – Lucas