getElementById为什么会失败   代码如下??
<script>
var inputvalue=documnet.getElementById("a").value;
function doScore(){
       alert(inputvalue);
    window.location="1.jsp?userName="+inputvalue;
    form1.submit(); 
  }   
</script>
<html><body>
<form id="form1" name="form1">
<% 
String aa=request.getParameter("userName");
out.println(aa);  
%><input type="text" id="a" name="userName" value="the return data is null."/>
<a href="javascript:doScore();">sdfs2</a>

解决方案 »

  1.   

    这个位置的js代码,会在浏览器渲染出那个input标签之前执行,
    也就是说还取不到那个a,
    按照你的代码,把这句话放在doScore里面就行了。good luck
      

  2.   

    function doScore(){
    var inputvalue=documnet.getElementById("a").value; 
          alert(inputvalue);
        window.location="1.jsp?userName="+inputvalue;
        form1.submit();
      }  
    测试 还是不可以 
    但炸道理  应该  alert(inputvalue);  居然连这个都没偶
      

  3.   

    难道是传说中的拼写错误的问题?document...gool duck
      

  4.   

     
    <html> <body> 
    <form id="form1" name="form1"> 
    <% 
    String aa=request.getParameter("userName"); 
    out.println(aa);  
    %> <input type="text" id="a" name="userName" value="the return data is null."/> 
    <a href="javascript:doScore();">sdfs2 </a> 
    ....
    </body><script> 
    var inputvalue=document.getElementById("a").value; 
    function doScore(){ 
          alert(inputvalue); 
        window.location="1.jsp?userName="+inputvalue; 
        form1.submit(); 
      }  
    </script>
    </html>
    document注意拼写
      

  5.   

    getElementById 和getElementByname有什么区别我实际页面很多是没有id的
    <input type="text"  name="userName" value="the return data is null."/> 
    是没有id的 ,问如何选择这2个方法
      

  6.   

    首先,没有getElementByname,只有getElementsByname,返回的是数组,原因如下
    1:id   就像身分证号,是唯一的,   name   就像姓名一样可以同名   2:一个元素定义了   id   ,引用该元素时直接用   id   属性,而   name   通常用在   form   中,且必须由   document.form.***   而来,也就是说,   name   属性定义的元素在脚本中是   document   对象的子对象。   通常在列表,或者复选筐等组件用到的时候会依赖name
      

  7.   

    var inputvalue=documnet.getElementById("a").value; 改成 window.onload = function() {
      var inputvalue=documnet.getElementById("a").value;
    }就可以了,或者把这行语句放到 </html> 的后面去
      

  8.   


    汗...
    这个window的onload是不行的。
    jquery的$(document).ready()可以
    Ext的ready()也行good luck
    good luck
      

  9.   


    getElementByname("radiobutton1"),那么你就取出了3个值
    所以最好设个id,因为id是唯一的,这样的话通过getElementById就能取到你想要的值。 
    if(form.textname.value=="")
    {
      alert("请输入内容");
      form.textname.focus();
      return false;
    }
    应该是==号在js里的循环怎么能去到服务器端变量的值,用
    s:iterator标签把你的变量循环输出,然后再访问JScript code    var myArray = new Array(); <s:iterator ...> myArray.push("<s:property .../>"); </s:iterator>myArray就是js里的数组了,用js的循环去访问 
      

  10.   

    是document.getElementById("**");,你拼写错误。
      

  11.   

    document你写错了,而且script标签里面最好写上type
      

  12.   

    修改后的代码
    <html> <body> 
    <form id="form1" name="form1"> 
    <% 
    String aa=request.getParameter("userName"); 
    out.println(aa);  
    %> <input type="text" id="a" name="userName" value="the return data is null."/> 
    <a href="javascript:doScore();">sdfs2 </a> 
    <script> 
    var inputvalue=documnet.getElementById("a").value; 
    function doScore(){ 
          alert(inputvalue); 
        window.location="1.jsp?userName="+inputvalue; 
        form1.submit(); 
      }  
    </script> 
    ==============================================================================
    var inputvalue=documnet.getElementById("a").value;  要在生成表单后才能用这个脚本 
    把脚本放在下面就可以了 
      

  13.   

    documnet   拼写错误,document   
      

  14.   

    var inputvalue=documnet.getElementById("a").value; 
    应该是document吧奇怪这个不会报脚本错误吗?
      

  15.   

    JS eclipse 里是不会报错的