これは、ちょうどすべてのためにそれを無効にするだけでなく、目的の要素。
onkeyup
オプションを使用すると、カスタム関数はプラグインのデフォルト関数を完全にオーバーライドします。 else
ステートメントがないので、tx_username
のフィールドが一致しないときは何も起こりません。onkeyup
の検証を完全に無効にすることができます。
onkeyup: function (element) {
if (element.id == 'tx_username') {
return false;
}
}
ソリューションは、あなたにthe default onkeyup
codeを組み込むことである...
onkeyup: function (element, event) {
var excludedKeys = [
16, 17, 18, 20, 35, 36, 37,
38, 39, 40, 45, 144, 225
];
if (element.id == 'tx_username') { // disable 'onkeyup' for this field
return false;
} else { // otherwise, use the default code
if (event.which === 9 && this.elementValue(element) === "" || $.inArray(event.keyCode, excludedKeys) !== -1) {
return;
} else if (element.name in this.submitted || element.name in this.invalid) {
this.element(element);
}
}
}
DEMO:http://jsfiddle.net/ff77xbvb/
注:のこの新しいバージョン関数は以下のキーを無視します...
// Shift => 16
// Ctrl => 17
// Alt => 18
// Caps lock => 20
// End => 35
// Home => 36
// Left arrow => 37
// Up arrow => 38
// Right arrow => 39
// Down arrow => 40
// Insert => 45
// Num lock => 144
// AltGr key => 225
if条件には、デフォルトのonkeyupコードを戻すelseが必要です。 – Sparky