2017-08-24 17 views
0

這裏的HTML:JavaScript變量沒有獲得通過的getElementById()的一個id的值

<form> 
     <input type="text" id="text1" required> 
     <button type="submit" onclick="checkBen()">Add</button> 
     <small id="beneficialAlear"></small> 
</form> 

和JavaScript:

function checkBen(){ 
      var str = document.getElementById("text1").innerHTML.value; 
      if(str != null){ 
       var xmlhttp = new XMLHttpRequest(); 
       xmlhttp.onreadystatechange = function() { 
        if (this.readyState == 4 && this.status == 200) { 
         document.getElementById("beneficialAlear").innerHTML = this.responseText; 
        } 
       }; 

       alert(str); 
       xmlhttp.open("GET", "../getFromAJAX.php?q=benUsername&str=" + str, true); 
       xmlhttp.send(); 
      } 
     } 

變量海峽得空,即使我輸入的東西因此永遠不會去ajax。 :( 是否有將不勝感激代碼什麼的幫助Anykind一個問題,謝謝

+3

'innerHTML'是一個字符串。字符串沒有'value'財產。 – SLaks

+1

它應該是'無功海峽=解決的文。ent.getElementById( 「文本1」)值;'。 – jdgregson

+0

把'.innerHTML'省略掉:document.getElementById(「text1」).value;' – Barmar

回答

1

你不應該說document.getElementById("text1").innerHTML.value;的元素沒有innerHTML你想document.getElementById('text1').value

EG?。:

function checkBen() { 
 
    var str = document.getElementById("text1").value; 
 
    // ... your code ..., E.G.: 
 
    alert(str); 
 
}
<form> 
 
     <input type="text" id="text1" required> 
 
     <button type="submit" onclick="checkBen()">Add</button> 
 
     <small id="beneficialAlear"></small> 
 
</form>

+0

這在評論中被回答了好幾次。沒有必要將它們複製成完整的答案。 – Andy