解决方案 »

  1.   


    var navRoot = document.getElementById("orderform");
    for (i=0; i<navRoot.childNodes.length; i++){
    node = navRoot.childNodes[i];
    if (node.nodeName=="input"){
    //
    }
      

  2.   


    var navRoot = document.getElementById("orderform");
    for (i=0; i<navRoot.childNodes.length; i++){
        node = navRoot.childNodes[i];
        if (node.nodeName=="INPUT"){
        //
        }
      

  3.   


    那如何进一步判断type为txt及value值呢?
      

  4.   

    如何判断如果某浏览器不支持getElementById的时候会自己不调用该函数脚本?
      

  5.   

    obj.getAttribute("type") == "txt";
    obj.getAttribute("value")  &&  obj.value 
      

  6.   

    全都支持这个,要判断
    if(document.getElementById)
    {
      支持脚本
    }
      

  7.   

    我刚用if(document.getElementById)
    {
    支持脚本

    测试了,可以运行呀。但为什么我那条运行的时候不正常?我的代码是判断所有text是否都为空
    我的代码是:function   foo(e)   {   
          var input_cart=document.getElementById("orderform").getElementsByTagName("input");
      var input_all=0;
          for   (var   i=0;   i<input_cart.length;   i++)   {   
              if   (input_cart[i].type=="text"   &&   input_cart[i].value!="")   {
      
                  input_all=input_all+1;   
              //alert(input_all);
              }   
          }
      if (input_all==0)
      {
      alert("Please input one of the quantity of products that you want before you submit,thanks!");
      return false;
      }
      }不管我在text里面输入什么值都返回是input_all==0
      

  8.   

    当然只在Firefox出现这样,在IE就正常
      

  9.   

    把你的页面完整代码整理下..(可测试的)用
    [code=JScri pt][\/code]
    这种的标记贴出来...
      

  10.   

    你分开写试试,有时候连在一起是犯错误的。
    <script>
    var myform = document.getElementById("orderform");
    var input_cart=myform.getElementsByTagName("input"); 
    </script>
      

  11.   

    呵呵 很简单的问题 是这样的 
    <form name="orderform"></form>
    IE下表单元素的name属性可以当ID用
    但FF严格要求要ID属性所以FF下会出错
    如果你这么写
    <form name="orderform" id="orderform"></form>
    那么FF下面就没问题了
      

  12.   

    当然也可以直接
    var input_cart=document.forms["orderform"].getElementsByTagName("input");
    这样是FF和IE都通用的
      

  13.   

    这样
    <html>
    <script type="text/javascript" language="javascript">
    function foo()
    {   
        var input_cart=document.getElementById("orderform").getElementsByTagName("input");
        var input_all=0;
        for (var i=0; i <input_cart.length; i++)
        {
            if(input_cart[i].type=="text" && input_cart[i].value!="")
            {
                input_all=input_all+1;
                alert(input_all);
            }   
        }
        if (input_all==0)
        {
            alert("Please input one of the quantity of products that you want before you submit,thanks!");
            return false;
        }
    }
    </script>
    <body>
    <form name="orderform" id="orderform">
    <input id="tete" type="text" value="test" />
    <input type="button" value="test" onclick="foo()" />
    </form>
    </body>
    </html>
      

  14.   

    呵呵,哪有不支持document.getElementById???如果不支持document.getElementById的浏览器也可以混出来那就太没天理了!!!不支持是因为你又带了.getElementsByTagName("input"); 
      

  15.   

    我找到原因了,但是没有找到根本原因在哪。是因为表格的问题。把<FROM>..</FORM>放的位置不一样在Firefox和IE的处理方式不一样。大家有碰上这现象了吗。
      

  16.   

    if(!document.getElementById) return false;
    else{ 
      支持脚本 
    }
      

  17.   

    补充一下好了  上面几个朋友都说的很清楚了  ff和IE还有一个不一样的在于DOM里面元素的确认问题
    在IE中代码换行不会被认为是一个元素
    而FF会认为这是一个元素 只不过他会认为是一个没东西的text元素这点很有趣  呵呵