其实, 也就只是想获取网页中的一个文本框的内容!
- HTML code
。。。 <script language="javascript" type="text/javascript"> //定义 文本框 的内容发生更改时的事件 function textName_Change() { divMsg.innerHTML = textName.value; // 语句错误? } </script>。。。 <!-- Html 服务器控件 属性 'runat'--> <div> 用户名: <input id="textName" type="text" value = "UserName" onchange ="return textName_Change()" /> </div> <!-- 显示输入的信息--> <div id ="divMsg"> </div>
运行出错:‘ textName 未定义 ’ ??? 那不也是个 ID 号么??像这条语句 divMsg.innerHTML = "Hello!"; 使用ID标识 Div 控件 来显示信息,能正常运行 而且书上的例子也是这样赋值的??
又用doucument获取 ID 对象,但第一次定义成这样的:
- HTML code
<script language="javascript" type="text/javascript"> // 获取文本框对象 var text = document.getElementById("textName"); function textName_Change() { //alert(text); //null //text = document.getElementById("textName"); // 正确的 divMsg.innerHTML = text.value; } </script>
错误是: ‘缺少对象’? 但是使用注释下的那个语句,在函数内部赋值,就可以正常显示??
初学, 很是不明白 JS 到底是怎么一回事 ??
------解决方案--------------------------------------------------------
楼主,我运行了你的代码,效果是出来了,JS报错和你说的错误时一样的我做了下修改,现在可以了,代码如下:
<script language="javascript" type="text/javascript">
//定义 文本框 的内容发生更改时的事件
function textName_Change() {
divMsg.style.display = "block";
divMsg.innerHTML = form1.textName.value; // 语句错误?
}
红色标注的地方就是你页面上的formID。
</script>
------解决方案--------------------------------------------------------
document.getElementById("textName").value
------解决方案--------------------------------------------------------
id不是这样用的,得获取对象,document.getElementById("divMsg")
之后进行你想进行的操作
------解决方案--------------------------------------------------------
JS要引用 Html 控件对象 首先肯定要先获取到这个对象 才能对这个对象进行操作撒
------解决方案--------------------------------------------------------
divMsg.innerHTML = textName.value这个火狐是可以这样用的,IE内核的不支持
这样是通用的divMsg.innerHTML = document.getElementById( "textName").value;