+ -
当前位置:首页 → 问答吧 → Firefox可以运行,IE下不行

Firefox可以运行,IE下不行

时间:2011-10-13

来源:互联网

index.php HTML页面:
HTML code

<table>
     <tr>
          <td>姓名</td>
         <td>
                <select name="username" id="username">
                    <option></option><-- 从数据库中循环出来的->
                 </select>
         </td>
          <td>学号</td>
          <td>
                <div id="number"></div>
          </td>
     </tr>
</table>



ajax.js页面
JScript code

function createXHR() {        
        return window.XMLHttpRequest?
            new XMLHttpRequest():
            new ActiveXObject("Microsoft.XMLHTTP");
}
var username = document.getElementById('username');
    username.onchange = function() {
        var xhr = createXHR();
        xhr.open('GET','member.php?username='+username.value,true);
        xhr.onreadystatechange=function() {
            if ( xhr.readyState == 4 && xhr.status == 200) {
                var text=xhr.responseText;
                if (document.all) {
                    document.getElementById('usermember').outerHTML='<input id="usermember" type="text" value="'+text+'"/>';
                } else {
                    document.getElementById('usermember').innerHTML = text;
                  }
            }
        };
        xhr.send();
        
};




member.php内容
if (!!$_GET['username']) {
  $_rows = _fetch_array("SELECT tg_usernumber FROM tg_user WHERE tg_username = '{$_GET['username']}'");
  echo $_rows['tg_usernumber'];
}

以上,在FF下可以显示出,但是在IE下却显示不了,不知道为什么,一个上午都没有搞定
后面看到论坛里面之前有人发贴,有高手说是
HTML code
<td>
<div id="member"></div>
</td>

这个的问题,但是我不知道怎么修改,才能让IE显示出来,太苦恼了~~

作者: van416521   发布时间: 2011-10-13

ie下有提示错误么?
用全英文的临时数据实验下

作者: ycmjh2010   发布时间: 2011-10-13

outerHTML ff不支持

作者: qianzai5765638   发布时间: 2011-10-13


 不对啊 lz 是 ff可以运行 ie不可以..

 有点.. 难以接受

作者: qianzai5765638   发布时间: 2011-10-13

不好意思,知道点原因了
原来是下一步在 IE中显示乱码

HTML code
xhr.open('GET','member.php?username='+username.value,true);


在IE中echo $_GET['username'] 显示 ?? 

在FIREFOX是正常的,显示 张三

我不明白,我在文件头有定义,格式
PHP code
header('Content-Type:text/html;charset=utf-8');

作者: van416521   发布时间: 2011-10-13

自己解决了,``
加个encodeURI就可以了.
xhr.open('GET','member.php?username='+encodeURI(username).value,true);


作者: van416521   发布时间: 2011-10-13