2016-04-14 17 views
0

以下のjavascriptコードでは、firebugデバッグモードでxmlhttp.onreadystatechangeにマウスを重ねるとnullになります。私は以前に多くのそのようなコードを書いてきましたが、なぜそれがnullを与えるのか分かりません。 xmlhttp.readystatechangeで書かれた関数は決して呼び出されません。どんな助け?xmlhttp readystatechange is null

var query= {"input": {"ip-list" : [{"ip-address": "23.23.23.23"}]}}; 
    var xmlhttp = new XMLHttpRequest(); 
    var url = "/servlet/dashboard/Manage?action=getInfo"; 
    xmlhttp.open("POST", url, true); 
    xmlhttp.setRequestHeader("Authorization", getAuthString()); 
    xmlhttp.setRequestHeader("Content-type", "application/json"); 
    xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      if (xmlhttp.responseText){ 
       console.log('test'); 
      } 
     }; 
     xmlhttp.send(JSON.stringify(query)); 
    } 
+0

は、スクリプトのどこにもXMLHTTPを再定義万が一ていますか?あなたは確かめるためにクイック検索を行うことができます。 – user3413723

+0

私は問題を発見した、私の答えを更新 – Kiran

答えて

0

私の間違いを理解し、1時間以上費やしました。私はreadystatechangeの中にxmlhttp.sendを書いていました。だからそれは決して呼び出されません。

修正されたコード:

xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      if (xmlhttp.responseText){ 
       console.log('test'); 
      } 
     } 
    }; 
    xmlhttp.send(JSON.stringify(query)); 
+0

人はイライラしている。あなたは答えを見つけてうれしい:) – user3413723