我现在想要的功能是让js正确的获取input输入框输入的内容并且以警告框的形式输出,我设计的代码如下,可是无论我在输入框中填入任何内容,输出的都是空。代码如下:<html>
<head>
<script language="javascript">
window.onload=function(){
x = document.form1.yourvalue.value;
l = document.getElementById("link");
l.onclick = function warn(){
alert(x);
}
}
</script>
</head>
<body>
<form name="form1">
<input type="text" name="yourvalue" size="40">
<a id="link">点击</a>
</form>
</body>
</html>

解决方案 »

  1.   

    你可以改成
    window.onload=function(){
        l = document.getElementById("link");
        l.onclick = function warn(){
         x = document.form1.yourvalue.value;
            alert(x);
        }
    }因为
    window.onload=function(){
    x = document.form1.yourvalue.value;
    是页面一加载完毕就赋值了,所以当时是空的。
      

  2.   

    你也可以先引用对象,后获取值
    例如
    <script language="javascript">
    window.onload=function(){
        x = document.form1.yourvalue;
        l = document.getElementById("link");
        l.onclick = function warn(){
            alert(x.value);
        }
    }
    </script>
      

  3.   

    window.onload=function(){
        x = document.form1.yourvalue.value;
    刚加载完成的时候yourvalue的值是空的,你就急急忙忙赋值给x了,以后点击的时候都是alert它,所以每次输出都是空!
      

  4.   


    <html>
    <head>
        <script type="text/javascript" charset="utf-8">
            window.onload = function() {
                var alink = document.getElementById("link");
                alink.onclick = function() {
                    var inputText = document.getElementById("yourvalue");
                    alert(inputText.value);
                }
            }
        </script></head>
    <body>
        <form name="form1">
        <input type="text" id="yourvalue" size="40"/>
        <a id="link" href="#">点击</a>
        </form>
    </body>
    </html>