日期:2014-05-16  浏览次数:20397 次

全局变量如何获取用户输入的值
<head>
        <title> Untitled   Page </title>
</head>
<body>
        <input   id= "aaa "   type= "text "   />
        <input   id= "bbb "   type= "text "   />
        <input   id= "Button1 "   type= "button "   value= "button "   onclick= "return   Button1_onclick() "   />

</body>
<script   type= "text/javascript ">
var   aaa=document.getElementById( 'aaa ').value;
var   bbb=document.getElementById( 'bbb ').value;
function   Button1_onclick()   {
        var   aa=document.getElementById( 'aaa ').value;
        var   bb=document.getElementById( 'bbb ').value;
        var   strsmg= 'aaa: '+aaa+ 'bbb: '+bbb+ 'aa: '+aa+ 'bb: '+bb;
        alert(strsmg);
}
</script>
</html>
从弹出的信息strsmg上可以看出,aaa和bbb没有获取用户输入的值,aa和bb获取的才是。
请问如何让aaa和bbb这样的全局变量获取用户后来输入的值?
(按钮只有一个。但是要验证的控件有很多的,请教一下思路。)

------解决方案--------------------
在用户输入时触发onkeydown事件,事件方法中将全局变量复制。

楼主上面的写法全局变量只取值一次,即页面load的时候。
------解决方案--------------------
onpropertychange in IE
watch in FF
------解决方案--------------------
<script type= "text/javascript ">
function Button1_onclick() {
var aaa=document.getElementById( 'aaa ').value;
var bbb=document.getElementById( 'bbb ').value;
sub();

}
function sub()
{
var aa=document.getElementById( 'aaa ').value;
var bb=document.getElementById( 'bbb ').value;
var strsmg= 'aaa: '+aaa+ 'bbb: '+bbb+ 'aa: '+aa+ 'bb: '+bb;
alert(strsmg);
}
</script>