フォームが有効な場合はの場合はjQuery検証ライブラリjquery.validate.min.jsとで最初に検証したいhtmlフォームがあります。Onclick有効な場合フォームを有効にする
私は次のことをしようとしています
<html>
<head>
<link rel="stylesheet" href="../../common/view/css/bootstrap.min.css" type="text/css">
<script src="../../common/view/js/jquery.js"></script>
<script src="../../common/view/js/bootstrap.min.js"></script>
<script src="../../common/view/js/jquery.validate.min.js"></script>
</head>
<body>
<form method="post" action="stock-c.php" id="issueform" name="issueform">
<input type="text" name="pid"/>
<input type="button" name="button1" id="button1"/>
<script type="text/javascript" src="js/issueValidation.js"></script>
<!--Modal-->
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<!--info to be displayed-->
<input type="submit" value="submit"/> <!--Explain1-->
</div>
</div>
</from>
</body>
</html>
issueValidation.js
$(document).ready(function() {
$validator= $("#issueform").validate({
rules: {
pid: "required",
},
messages: {
pid: "Please enter a value",
},
errorElement: "em",
errorPlacement: function (error, element) {
// Add the `help-block` class to the error element
error.addClass("help-block");
if (element.prop("type") === "checkbox") {
error.insertAfter(element.parent("label"));
} else {
error.insertAfter(element);
}
},
highlight: function (element, errorClass, validClass) {
$(element).parents(".col-sm-5").addClass("has-error").removeClass("has-success");
},
unhighlight: function (element, errorClass, validClass) {
$(element).parents(".col-sm-5").addClass("has-success").removeClass("has-error");
}
});
$('#button1').on('click', function() {
$("#issueform").valid(); //everything works upto here
if($validator.noOfInvalids()===0){ //this code doesn't work
$('#myModal').modal('toggle');
}
});
});
Explain1:時になるように、私は、私のフォームタグ内にあるモーダルクラスで送信ボタンを配置フォームデータをクリックすると送信されます。
理想的には、フォームが検証されるまで提出を停止したいと考えています。フォームが有効な場合は、モーダルでフォームデータを確認し、送信ボタンをクリックしてから送信する必要があります。
私は、モーダルを初期化するためにjQuery検証プラグイン(フォームに致命傷がない場合にのみ実行されます)でsubmitHandlerを使用しようとしましたが、入力[type = "button"]を変更する必要があります[ type = "submit"]ハンドラは送信ボタンでのみ機能するためです。その後、同じフォームに2つの送信ボタンが表示され、フォームが正しく送信されません。
この問題を修正するのを手伝ってください。要約すると、フォームに入力されたデータを検証し、ユーザーからの確認をモーダルで要求する必要があります。ユーザーがモーダルで確認すると、フォームのデータが送信されます。私の方法がこの成果を達成するための不必要な方法である場合、上記の要件に適合している限り、別の提案も歓迎されます。ありがとうございました。
美しくてシンプルな... :-)私はドキュメントでそのリターンを見逃したとは思いません。どうもありがとう... – user3889963