改为这样
   alert(document.forms[form].number.value);

解决方案 »

  1.   

    document.form.number.value
    没有number这个对象吧。
      

  2.   

    不要使用一些有歧义的变量名
    <script language="javascript">
      function onsave(tmp,fm)
      { 
        var fm;
        var num;
        fm='form'+fm.toString();
        num='txtnumber'+tmp.toString();
        alert(document.forms[fm].num.value);
      }
    </script>
      

  3.   

    有些问题,改一下
    <script language="javascript">
      function onsave(tmp,fm)
      { 
        var fom, num;
        fom = 'form' + fm.toString();
        num = 'txtnumber' + tmp.toString();
        alert(document.forms[fom].num.value);
      }
    </script>
      

  4.   

    <!---下面的html是按照你的 asp 文件生成的html-->   
    <form name=form1 method=post>   
       <input type=text name=txtnumber1 value="1"> 
       <button onclick="javascript:onsave(1,1)">查看</button><br>    
       <input type=text name=txtnumber2 value="2"> 
       <button onclick="javascript:onsave(2,1)">查看</button><br>    
       <input type=text name=txtnumber3 value="3"> 
       <button onclick="javascript:onsave(3,1)">查看</button><br>    
       </form>
       
    <form name=form2 method=post>   
       <input type=text name=txtnumber1 value="2"> 
       <button onclick="javascript:onsave(1,2)">查看</button><br>    
       <input type=text name=txtnumber2 value="4"> 
       <button onclick="javascript:onsave(2,2)">查看</button><br>    
       <input type=text name=txtnumber3 value="6"> 
       <button onclick="javascript:onsave(3,2)">查看</button><br>    
       </form>
       
    <form name=form3 method=post>   
       <input type=text name=txtnumber1 value="3"> 
       <button onclick="javascript:onsave(1,3)">查看</button><br>    
       <input type=text name=txtnumber2 value="6"> 
       <button onclick="javascript:onsave(2,3)">查看</button><br>    
       <input type=text name=txtnumber3 value="9"> 
       <button onclick="javascript:onsave(3,3)">查看</button><br>    
       </form><script language="javascript">
      function onsave(tmp,fm) { 
    var vv=eval(["document.form",fm,".txtnumber",tmp].join("")).value
    return alert(vv || "请输入数据")   //如果为空就提示输入数据
      }
    </script>
      

  5.   

    eval(["document.form",fm,".txtnumber",tmp].join("")) 什么意思?
    看不懂
      

  6.   

    var ss=["document.form",fm,".txtnumber",tmp].join("")的作用就是把数组的内容连起来变成字符串.也可以这样写,两者是一样的,看个人的写作风格了 
    var ss="document.form"+fm+".txtnumber"+tmpeval(ss)  就是执行一个字符串, eval(ss)就是把string变成一个dom对象看个例子<input id="t1" value="aaa">
    <button onclick="func1()">查看1</button>
    <button onclick="func2()">查看1</button>
    <script>
    var vv="t"+"1"
    function func1(){alert(vv.value)}
    function func2(){alert(eval(vv).value)}//结果自己看把, func1会出错</script>