多谢各位解答,问题的确怪异,本来是想在客户端验证用户名是否已被注册.没办法后来在页面中没有用它了,只好在服务端验证了.客户催得紧急,先应付一下.首先不是大小写问题,另外也是在函数中使用的,保证div先得到了加载.本人在其它项目中也使用过. function CheckUid(obj){ var url="checkUid.aspx?uid="+obj.value; var xml=new ActiveXObject("Microsoft.XMLHTTP"); xml.Open("POST",url,false); xml.Send(); uidCheckText.innerHTML=xml.responseText; } 但在这个项目中,就是不能使用.而且每个页面都不能得到div的innerHTML,其它页面对象都没有问题,比如img.
也不是函数错误,obj.value可以得到,把函数改为以下.可以显示正确的返回值; function CheckUid(obj){ var url="checkUid.aspx?uid="+obj.value; var xml=new ActiveXObject("Microsoft.XMLHTTP"); xml.Open("POST",url,false); xml.Send(); document.write(xml.responseText); }
document.getElementByName("abc")
此处应为
document.getElementsByName("abc")
但这个用法主要针对表单中的控件。
==========================
这位是不睡觉的吗?
1.html:
<div id=a></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
var a =document.getElementById('a').innerHTML;
alert(a); //提示没有对象,很正常的情况.....
//-->
2.html:
<html>
<head>
</head>
<body>
<div id=a></div>
</body>
</html>
<SCRIPT LANGUAGE="JavaScript">
<!--
var a =document.getElementById('a').innerHTML;
alert(a); //弹出空
//-->
</SCRIPT>
完整的HTML下来的话就不会提示错误
还有getElementByTagName 通过元素标签名获得元素
getElementByName 通过元素NAME获得元素,注意这个方法是针对FORM标签里面的元素
2.你的Javascript代码,写在什么地方.如
<body>
<script>
alert(document.all.a.innerHTML);
</script>
<div id="a">OK</div>
</body>
这样,就错啦,因为,DIV还没有载入,你就已经在访问他了。建议改用函数调用。在BODY ONLOAD里:
<body onload="test()">
<script>
function test()
{
alert(document.all.a.innerHTML);
}
</script>
<div id="a">OK</div>
</body>
这时的调用,就保证div a 已经加载了呵呵,我以前也碰到过这种怪事, 我也有LZ的困惑~~
<from name="myform" id="theform">
<input type="text" name="myinput" id="theinput">
</form>以上这个Form的内容,
document.all.myform.all.myinput 访问的是ID
document.forms.theform.theinput 访问的是NAME属性
JS里面是区分大小写的
如果初初用ASP较多的话
就可能遇到这类问题
以前也试过类似的错误,呵呵
小心为妙啊
function CheckUid(obj){
var url="checkUid.aspx?uid="+obj.value;
var xml=new ActiveXObject("Microsoft.XMLHTTP");
xml.Open("POST",url,false);
xml.Send();
uidCheckText.innerHTML=xml.responseText;
}
但在这个项目中,就是不能使用.而且每个页面都不能得到div的innerHTML,其它页面对象都没有问题,比如img.
function CheckUid(obj){
var url="checkUid.aspx?uid="+obj.value;
var xml=new ActiveXObject("Microsoft.XMLHTTP");
xml.Open("POST",url,false);
xml.Send();
document.write(xml.responseText);
}