2016-04-19 7 views
0

を入力中にjQueryを使ってアイコンの色を変更する、私はこのようにその中に電子メールのテキストボックスと封筒のアイコンがあります。テキストボックスに

<input id="AdminEmail" name="AdminEmail" style="width:100%;padding-right:30px;" type="text" value=""> 
<span class="glyphicon glyphicon-envelope form-control-feedback" style="right: 10px; line-height: 27px; color: lightblue"></span> 

そして私はの色を変更するjQueryを追加しました入力した電子メールが正しいかどうかを確認するには、電子メールアイコンをクリックします。 「alert」を使用したときに機能しましたが、alertの代わりに実際に色を変更したいときには機能しませんでした。

$("#AdminEmail").keyup(function() { 
    var $email = $(this).val(); 
    validateEmail($email); 
}); 
function validateEmail($email) { 
    var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/; 
    if (!emailReg.test($email)) { 
     $(".glyphicon-envelope").CSS('color', 'red'); 
    } else { 
     $(".glyphicon-envelope").CSS('color', 'blue'); 
    } 
} 
+3

それは...ああJSは、大文字と小文字が区別され –

答えて

2

私はあなたの問題はCSSが小文字である必要があると考えています。

$(".glyphicon-envelope").css('color', 'red'); 

あなたは本当に賢いになりたい場合は、

$(".glyphicon-envelope").css('color', emailReg.test($email) ? 'blue' : 'red'); 
+0

..... 'の.css()'、 'ない.CSS()'だ知りませんでした..thanks – Bohn

+0

"$ email"は "val"関数が返すものなので、普通の文字列です。変数名に「$」を使用して「jQueryオブジェクト」を示す場合はそうではありません。 – SuperFLEB

1

単純にそのセクション全体を組み合わせることができ、...

はちょうど( '色' を.CSSするように変更.... )

キャップなし

関連する問題