duanhuilao0787
2014-12-12 18:48
浏览 185

没有得到ajax-xmlhttp.open中的字符串值(“GET”,“xxx.php?q =”+ str,true);

From the below example,if value is in numbers its working correctly.But if its in string the value displays as 0 W3 Schools Example

HTML:

<select name="users" onchange="showUser(this.value)">
  <option value="">Select a person:</option>
  <option value="abc-01">Peter Griffin</option>
  <option value="aaac-02">Lois Griffin</option>
  </select>

SCRIPT:

function showUser(str) {
    if (str == "") {
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else { 
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET","ajax2.php?q="+str,true);
        xmlhttp.send();
    }
}

PHP:

$q = intval($_GET['q']);        
echo    $q ;

I get 0 as value.Need help

图片转代码服务由CSDN问答提供 功能建议

从下面的示例中,如果值是数字,则其工作正常。但是如果它在字符串中的值 显示为0 W3学校示例 \ n

HTML:

 &lt; select name =“users”onchange =“showUser(this.value)”&gt; 
&lt;  ; option value =“”&gt;选择一个人:&lt; / option&gt; 
&lt; option value =“abc-01”&gt; Peter Griffin&lt; / option&gt; 
&lt; option value =“aaac-02”&gt;  ; Lois Griffin&lt; / option&gt; 
&lt; / select&gt; 
   
 
 

SCRIPT:

  function showUser(str){
 if(str ==“”){
 document.getElementById(“txtHint”)。innerHTML =“”; 
 return; 
} else {
 if(  window.XMLHttpRequest){
 //代码为IE7 +,Firefox,Chrome,Opera,Safari 
 xmlhttp = new XMLHttpRequest(); 
} else {
 //代码为IE6,IE5 
  xmlhttp = new ActiveXObject(“Microsoft.XMLHTTP”); 
} 
 xmlhttp.onreadystatechange = function(){
 if(xmlhttp.readyState == 4&amp;&amp;  xmlhttp.status == 200){
 document.getElementById(“txtHint”)。innerHTML = xmlhttp.responseText; 
} 
} 
 xmlhttp.open(“GET”,“ajax2.php?q =”+  str,true); 
 xmlhttp.send(); 
} 
} 
   
 
 

PHP: \ n

  $ q = intval($ _ GET ['q']);  
echo $ q; 
   
 
 

我得到0作为值。需要帮助

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • douqie1884 2014-12-12 18:54
    已采纳

    You are trying to convert String to int in php as there are String values in your htm code and you are trying to convert these values in int in you php code so correct your code accordingly.

    if html is

    <select name="users" onchange="showUser(this.value)">
      <option value="">Select a person:</option>
      <option value="abc-01">Peter Griffin</option>
      <option value="aaac-02">Lois Griffin</option>
      </select>
    

    then php code would be.

    $q = $_GET['q'];       
    echo    $q ;
    
    打赏 评论
  • doupingpeng7567 2014-12-12 18:55

    You are trying to return an intval in php of a string "abc-01"

    打赏 评论

相关推荐 更多相似问题