<script type="text/javascript">
        function CheckInput(obj,type){
            var content = type+'content';
            //alert(content);
            alert(obj.content.value);
            //问题出在这里,怎么获取不到当前表单项的值呢?
            return false;
        }
  </script>  <form action="save.php" method="post" name="aform" onsubmit="return CheckInput(this,'a')">
      <input type="text" name="acontent" />
      <input type="submit" name="submit" value="发布" />
  </form>
  <form action="save.php" method="post" name="bform_1" onsubmit="return CheckInput(this,'b')">
      <input type="text" name="bcontent" />
      <input type="submit" name="submit" value="发布" />
  </form>
  <form action="save.php" method="post" name="bform_2" onsubmit="return CheckInput(this,'b')">
      <input type="text" name="bcontent" />
      <input type="submit" name="submit" value="发布" />
  </form>
我是想根据参数不同然后获取到不同名称的表单项的值。目前,我唯一能想到的办法是把里面的acontent和bcontent表单项的name都改成相同的,比如content,然后再通过js函数处理,但我总觉得这个思路有问题。所以还是比较偏向于能通过js的参数来判断。在js论坛问了一下,貌似也没有好的方法。所以发到这里看看谁能帮忙看下。

解决方案 »

  1.   

    obj.getElementsByName(content)[0].value; 获取比较正规点吧怎么说。
      

  2.   

    抱歉,发现自己写的有纰漏
    function CheckInput(obj, type){
                // obj无用
                var content = type+'content';
                // 这样获取吧
                alert(document.getElementsByName(content)[0].value);
                return false;
    }
      

  3.   

    加个同名id
    document.getElementById(content).value
      

  4.   

    <script type="text/javascript">
            function CheckInput(obj,type){
                var content = type+'content';            alert(obj.content.value); //对象没有这么组合的。应该改为:obj.elements[content].value;
                
                return false;
            }
      </script>
      

  5.   

    <script type="text/javascript">
            function CheckInput(obj,type){
                var content = type+'content';
                //alert(content);
                alert(obj.content.value);  //alert(obj.firstChild.value);这样写可以
                //问题出在这里,怎么获取不到当前表单项的值呢?
                return false;
            }
      </script>