2012-04-08 10 views
0

これは私の問題です。 jQueryを使用してxmlhttpRequestのresponseTextに基づいてテキストフィールドのCSSスタイルを変更しようとしています。会社名がすでに取得されている場合、phpファイルは「会社名はすでに取得済み」と表示されます。私はcomp_statボックスの背景を赤色にしたい。会社名が一意であれば、phpファイルは "Company Name Ok"をエコーし​​、comp_statボックスの背景を緑色にします。xmlhttp.responseTextに基づいてCSSスタイルを変更してください

これはjavascriptです - 選択したテキストは機能しない部分です。

xmlhttp.onreadystatechange = function(){ 
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200){ 
     document.getElementById("comp_stat").value = xmlhttp.responseText; 

     /*Not working part*/ 
     if(xmlhttp.responseText == 'Company Name Already Taken.'){ 
      document.getElementById("comp_stat").style.backgroundColor = "red"; 
     } 
     if(xmlhttp.responseText == 'Company Name OK!'){ 
      document.getElementById("comp_stat").style.backgroundColor = "green"; 
     } 
     /*----------------*/ 
} 

は、この上で時間のために私の頭を悩まれて、それはおそらく簡単な修正です...任意の助けいただければ幸いです!

+1

コードは、テキストフィールドへの参照と応答テキストを変数に格納するために少しリファクタリングできますが、動作するはずです。戻ってくるテキストが、あなたが期待しているものと一致していることは確かですか?先頭に空白がないか、それとも何か? –

答えて

0

あなたが強調した部分は問題ありません。

ただし、コード内の他の場所にエラーがある可能性があります。デバッグにはWebインスペクタまたはデバッガを使用することをお勧めします。私はChromeのデベロッパーツールが本当に好きです(本当にAppleのものです)。これは本当に使いやすいです。もしあればエラーを表示し、行番号も表示することができます。 enter image description here

エラーがどこに表示されますか。非常に便利。

+0

私は、JavaScriptデバッグ以外の方法では、Firebugと同じくらいうまくいきたいと思っています。それは、新しいFirefoxインスペクタのことが二重になります。なぜ、彼らは「ここに発明されたものではない」ゲームを、妥当なライセンス条項ではるかに優れた何かが既に存在するときに何の利益もないと主張しているのですか? –

関連する問題