ajax 新手问题,着急

来源:百度知道 编辑:UC知道 时间:2024/05/23 18:40:14
要实现注册页,填完名字后,自动验证是否合法,验证代码写在db.php中,若RegName已存在,写0,否则写1.以下代码在ie中已通过,但是firefox中不可以,不知道为什么,着急等待
var xmlHttp
function showHint(str)
{
if (str.length > 0)
{
RegName.innerHTML="正在验证用户信息....";
var url="db.php?RegName=" + str
document.getElementById("RegName").innerHTML=url
xmlHttp=GetXmlHttpObject()
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}
else
{
document.getElementById("RegName").innerHTML=""
}
}
function updatePage() {
if (xmlHttp.readyState < 4) {
document.getElementById("RegName").innerHTML="  " +"正在检测中...";
document.getElementById("RegNameID1").value= "NO";
}
if (xmlHttp.readyState == 4) {
var response = xmlHttp.responseText;
if (response =

我告诉你为什么
首先 RegName.innerHTML="正在验证用户信息...."; 你这句就错了
因为firefox是很标准 他只会对一个id进行操作
我不知道你写的这个RegName是什么 是对象的name吗?? 如果是这样的话你就应该把他更正过来
举个例子
<input type=button id="aaa" name="bbb">
用firefox就必须写成document.getElementById("aaa").innerHTML
而在ie就可以写成
document.getElementById("aaa").innerHTML
document.getElementById("bbb").innerHTML
甚至还能写成bbb.innerHTML
ie都认识

补充一句啊 看明白了别忘了给哥们加分啊
嘿嘿

其原因可能是firefox这种浏览器不支持innerHTML这个属性造成的。因为innerHTML属性不是HTML元素的标准属性,所以与标准兼容的浏览器不一定提供这个属性的实现。