0
私は次元フィールドを持つフォームを持っており、次のようにフォームを検証します。動的に変化する異なる要素のJquery検証カスタムメッセージ
$("#myForm").validate({
rules:{
"length" : {
required: true,
number: true,
range: [0, 101.1]
},
"width" : {
required: true,
number: true,
range: [0, 101.1]
},
"weight" : {
required: true,
number: true,
range: [0, 99.999]
}
},
messages : {
"length" : {
required: globalCtx.requiredMsg,
range: $("#selectedUnit").val() =="true" ? globalCtx.invalidSizeMetric : globalCtx.invalidSizeImperial
},
"width" : {
required: globalCtx.requiredMsg,
range: $("#selectedUnit").val() =="true" ? globalCtx.invalidSizeMetric : globalCtx.invalidSizeImperial
},
"weight" : {
required: globalCtx.requiredMsg,
range: $("#selectedUnit").val() =="true" ? globalCtx.invalidWeightMetric : globalCtx.invalidWeightImperial
}
}
});
ユニットが変更されるたびに、私は以下の関数を呼び出して皇室のメッセージを反映するようにエラーメッセージを変更します。
function changeMetric(){
if($("#selectedUnit").val() =="true"){
jQuery.extend(jQuery.validator.messages, {
"weight":{
range: globalCtx.invalidWeightMetric
},
"length" : {
range: globalCtx.invalidSizeMetric
},
"width" : {
range: globalCtx.invalidSizeMetric
}
});
}else{
jQuery.extend(jQuery.validator.messages, {
"weight":{
range: globalCtx.invalidWeightImperial
},
"length" : {
range: globalCtx.invalidSizeImperial
},
"width" : {
range: globalCtx.invalidSizeImperial
}
});
}
}
ただし、この機能はエラーメッセージを更新していません。