フォームの検証を行っています。フォーム入力が正しくない場合、テキストボックスに赤い境界線を追加します:
document.getElementById("fName").style.borderColor="#FF0000"
これにより、2pxの赤い境界線が表示されます。私がやりたいのは、ユーザーが正しい値を入力して元の境界に戻るかどうかです...
誰かが私がJavaScriptで境界線のサイズと色を変更する方法を教えてもらえますか
代わりにCSSクラスでCSSスタイルを使用する
[〜#〜] css [〜#〜]
.error {
border:2px solid red;
}
Javascriptで
document.getElementById("fName").className = document.getElementById("fName").className + " error"; // this adds the error class
document.getElementById("fName").className = document.getElementById("fName").className.replace(" error", ""); // this removes the error class
私がこれに言及する主な理由は、エラー要素の境界線の色を変更したいということです。方法を選択した場合、コード内の多くの場所を変更する必要があります。私の方法を選択した場合、スタイルシートを簡単に編集できます。
document.getElementById("fName").style.border="1px solid black";
試してみてください
document.getElementById('name').style.borderColor='#e52213';
document.getElementById('name').style.border='solid';
を追加 onchange 入力要素へのイベント:
<input type="text" id="fName" value="" onchange="fName_Changed(this)" />
Javascript:
function fName_Changed(fName)
{
fName.style.borderColor = (fName.value != 'correct text') ? "#FF0000"; : fName.style.borderColor="";
}
document.getElementById("fName").style.borderColor="";
境界線の色を元に戻すのに必要なのはこれだけです。
境界線のサイズを変更するには、element.style.borderWidth = "1px"
を使用します。
私はjQuery IMHOを使用してみるべきVicente Plataが最高のjavascriptライブラリであることには同意します。 CSSファイルにクラスを作成し、jqueryで次のことを行うことができます。
$('#fName').addClass('name_of_the_class');
それだけです。もちろん、ブラウザの非互換性について心配する必要はありません。それはjqueryのチームの問題です:D LOL
ユーザーが間違った値を入力した場合、入力フィールドに1pxの赤色の境界線を適用します。
document.getElementById('fName').style.border ="1px solid red";
ユーザーが正しい値を入力した場合、入力フィールドから境界線を削除します。
document.getElementById('fName').style.border ="";