2
入力が間違っている場合は、赤で強調表示します。私は以下を試しました:要素の配列を正しく渡す
入力が間違っている場合は、赤で強調表示します。私は以下を試しました:要素の配列を正しく渡す
フォーム名と入力名またはIDとdocument.getElementById
のどちらかを使って入力ファイルにアクセスするシステムを1つだけ使用することをお勧めします。
次に、同じ値を持つid
とname
の属性を<input type="text">
とすることをお勧めします。
内容を確認してスタイルを変更するために、私は要素をとり、id
で配列を使用します。
function check() {
var regex = new RegExp(/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?()]/),
ltr = /[a-zA-Z ]+/,
inputs = ['nem', 'nef', 'rem', 'ref', 'ea', 'ver', 'kavm', 'kavf'],
i,
fehlerB = false,
element;
for (i = 0; i < inputs.length; i++) {
element = document.getElementById(inputs[i]);
if (ltr.test(element.value) && !regex.test(element.value)) {
element.style.border = '2px solid red'; // i suggest to use 2px, because
fehlerB = true; // it renders better on displays
} // with sub pixel
}
return !fehlerB;
}
<form name="inputform" id="inputform" onsubmit="return check()" action="">
<input id="nem" name="nem">
<input id="nef" name="nef">
<input id="rem" name="rem">
<input id="ref" name="ref">
<input id="ea" name="ea">
<input id="ver" name="ver">
<input id="kavm" name="kavm">
<input id="kavf" name="kavf">
<input type="submit" onclick="return check()" />
</form>
それは// relevant'ない何かが、あなたが思っているより多くの関連性があるかもしれない 'のように私に聞こえます。 [mcve]を投稿してください。 – CollinD
何が間違っていると思いますか?エラーが発生しましたか、予期しない結果が出ましたか? – 4castle
私の前のコードを修正しました@CollinD – 4reffdsfsffewf