0
jQueryの検証フォームにルールを動的に追加しています。フィールド名に変数が含まれているため、このルールは動的に追加されます。これがコードです。jQueryはカスタムアクションでルールを追加します
$('#message_' + default_language_id + '_0').rules('add', {
required: true,
messages: {
required: "something is wrong."
}
});
このルールでは、フォームの検証時に匿名関数を使用してアクションを実行します。しかし、ドキュメント上で実行されている関数が準備されていなければ、これを行うオプション/方法が見つかりません。
$(document).ready(function(){
var default_language_id = $("#default_language_id").val();
var validator = $("#message_form").submit(function() {
tinyMCE.triggerSave();
}).validate({
ignore: "",
rules: {
publish_date: {
check_publish_date: true,
check_expiry_date: true
},
expiry_date: {
check_expiry: true,
}
},
errorElement: "span",
errorClass: "help-block",
highlight: function (element, errorClass, validClass) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function (element, errorClass, validClass) {
$(element).closest('.form-group').removeClass('has-error');
},
errorPlacement: function (error, element) {
if (element.parent('.input-group').length || element.prop('type') === 'checkbox' || element.prop('type') === 'radio') {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});
$('#message_' + default_language_id + '_0').rules('add', {
required: true,
messages: {
required: "something is wrong"
},
});
だから、私はで終わるしたいことは、このようなものがある(これは動作しません):
ここでは、拡張コードスニペットは、より多くのコンテキストでそれを置くことです
$('#message_' + default_language_id + '_0').rules('add', {
required: true,
messages: {
required: "something is wrong."
},
onsubmit: function(){
alert("I am only triggered when the form errors on this rule");
}
});
誰も助けることができますか?前もって感謝します。
あなたは絶対** ** '.validate()' submit'ハンドラの内部 'メソッドを持つべきではありません。このメソッドは、**プラグインを初期化する**準備が整ったDOMでのみ使用され、 'click/submit'イベントは自動的に処理されます。 – Sparky