ajax+php的有关问题

WBOY
リリース: 2016-06-13 10:17:48
オリジナル
788 人が閲覧しました

ajax+php的问题
有好几个checkbox循环出来,还有个文本框

HTML code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><input name="ckID[]" type="checkbox" id="<?='ckID'.$row['MIS_id']?>" value="<?=$row['MIS_id']?>" onclick="showInfor(this.value)"><div id="txtHint"><input name="txtid" type="text" id="txtid"></div>
ログイン後にコピー

以下是AJAX:
JScript code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->function showInfor(str) {     //document.getElementById("txtid").value=str;    //var str = document.geElementById("ckID").value;    //document.write(str);    var xmlhttp;    if (id.length==0)      {      document.getElementById("txtid").value="";      return;      }    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("show").innerHTML=xmlhttp.responseText;        document.getElementById("txtid").value=xmlhttp.responseText;        }      }    xmlhttp.open("GET","showSettle.php?q="+str,true);        xmlhttp.send();}
ログイン後にコピー

然后是对于的php页面
PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$db = mysql_connect("localhost","root","1234");mysql_select_db("it database",$db);$q=$_GET['q']; // connecting to database and stuff...  echo $q;  $temp = mysql_query("SELECT MIS_id FROM materialinstorage WHERE MIS_id = '$q' "); echo $temp;$row = mysql_fetch_array($temp);  $id =$row['MIS_id'];  echo $id;
ログイン後にコピー

现在好像是php那页面不执行,没反应啊。
我在ajax里执行document.write(str);可以得到数据的。
请问哪里出错了呀

------解决方案--------------------
弄个google浏览器或者firebug一看就知道了!
------解决方案--------------------
探讨

他说我id为定义
我把ajax里的id.length==0改成了xmlhttp==null
可效果还是一样的,状态栏里也没显示网页错误了

------解决方案--------------------
if (id.length==0)
这个 id 没有定义
------解决方案--------------------
一步一步调试。首先alert(xmlhttp.responseText); 看能不能弹出php端的输出。
------解决方案--------------------
HTML code
document.getElementById("txtid").value="";应该是这句,这是什么错啊 //跟你这句没关系的,这句只是设置文本框中的值为空if (id.length==0){  //是这段的处理,主要是id.length这个没有定义,不懂这段做什么,是判断复选框是否被选? 检查下这段      document.getElementById("txtid").value="";      return;  }<div class="clear">
                 
              
              
        
            </div>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート