2014-08-27 50 views
0

我需要转换messbox值,以便它可以传递到loadPHPDoc函数,但我似乎无法成功传输数据。它成功地加载了PHP文件,当我将引号放在实际参数的周围时,但我没有,它根本不使用该函数,并且不起作用。这里是我的代码:将文本输入转换为javascript函数的实际参数

<!DOCTYPE html> 
<html> 

<body> 

<p id="myDiv">no</p> 

<script> 
    function loadPHPDoc(str){ 
     var xmlhttp; 
     if (window.XMLHttpRequest) 
      {// code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp=new XMLHttpRequest(); 
      } 
     else 
      {// code for IE6, IE5 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
      } 
     var url = "testSubmit.php"; 
     xmlhttp.onreadystatechange=function() 
      { 
      if (xmlhttp.readyState==4 && xmlhttp.status==200) 
      { 
      document.getElementById("myDiv").innerHTML=xmlhttp.responseText; 
      } 
      } 
     xmlhttp.open("POST","testSubmit.php",true); 
     xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 
     var sender = "q=" + str; 
     xmlhttp.send(sender); 
     document.getElementById("myDiv").innerHTML = str; 
    } 

</script> 

     <p>Message <input type= "text" id="messbox"></p> 
     <button type= "button" onclick="loadPHPDoc(document.getElementById(messbox).value)">input</button> 

</body> 
</html> 
+0

支持IE5和IE6,真的吗? (; 你能设置一个jsfiddle吗?它使我们更容易帮助你 – 2014-08-27 21:57:25

+0

如果你不把'messbox'放在引号中,它会尝试使用'messbox'作为变量。 – Barmar 2014-08-27 22:01:57

+0

@FranciscoPresencia它是只是普通的样板。 – Barmar 2014-08-27 22:02:26

回答

2

document.getElementById()接收一个字符串作为参数,所以:

<button type= "button" onclick="loadPHPDoc(document.getElementById('messbox').value)">input</button> 
+0

非常感谢,解决了这个问题。 – 2014-08-27 22:56:22

相关问题