javascriipt获得焦点问题2

来源:百度知道 编辑:UC知道 时间:2024/05/15 03:18:14
<html>
<script language="javascript">
function check(ss){
var str=ss.value;
alert(ss.name+"的值为"+str);//-------1
ss.value="";//-----------------------2
ss.focus;//--------------------------3
}

</script>
<body>
<form id="form1" name="form1" method="post" action="">
<textarea name="a" id="a" title="第一个" ></textarea>
<textarea name="b" id="b" onFocus="check(a)"></textarea>
</form>
</body>
</html>

为什么上面的程序运行后,1和2处都正常执行,但3处却没能获得焦点。

请问为什么3处没能获得焦点呢?

谢谢!!

ss.focus;
改为ss.focus();

ss.focus();//--------------------------3

这个是方法吧。。不是属性

调用focus方法最好在后面加个括号,也就是改成:focus()
……onFocus="check(a)"…… 这里,只写为(a),就是将a以一个未确定值的变量传给函数的,要传表单元素的名称,应该写为('a')

具体代码:
<html>
<script language="javascript">
function check(ss){
var str=document.getElementById(ss);
alert(str.name+"的值为"+str.value);//-------1
str.value="";//-----------------------2
str.focus();//--------------------------3
}
</script>
<body>
<form id="form1" name="form1" method="post" action="">
<textarea name="a" id="a" title="第一个" ></textarea>
<textarea name="b" id="b" onFocus="check('a')"></textarea>
</form>
</body>
</html>

楼上的!楼