document.all("p5").value = parseFloat(document.all("p4").value) * parseFloat(document.all("nums").value);你为什么这么多同名的控件,这样引用的时候会有问题,最好改为不同名的

解决方案 »

  1.   

    /***************************************************************************************           
     选择任何一个select的option的时候,将p4与select相乘,并将积显示在p5中           
    ****************************************************************************************/           
    <script>
    function chng()
    {
      var os1=document.all.s1.value;
      var os2=document.all.s2.value;
      var os3=document.all.s3.value;
     alert(document.all.p41.value) ;
     document.all.p51.value = (document.all.p41.value) * os1;
     document.all.p52.value = (document.all.p42.value) * os2;
     document.all.p53.value = (document.all.p43.value) * os3;
    }
    </script><form name="pns" method="post" action="#"><select id="s1" name="num" onchange="chng()">
    <option id="op1" value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input type="text" name=p41 value="4.5">           
    <input type="text" name=p51 value="4.5">           
    <p>          <select id="s2" name="num" onchange="chng()">          
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input type="text" name=p42 value="6.4">           
    <input type="text" name=p52 value="6.4">           </p>
    <p>          <select id="s3" name="nums" onchange="chng()">          
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input type="text" name=p43 value="3.8">           
    <input type="text" name=p53 value="3.8">           
    </p>
    <p>          
    ……
    </p>
    </form>
      同名不好
      

  2.   

    <script>
    function chng(obj)
    {
    var elem=document.pns.children;
    for(var i=0;i<elem.length;i++)
    if (elem[i].name==obj.name)elem[i+2].value=(elem[i+1].value* obj.options[obj.selectedIndex].value);}
    </script>
    <body >
    <form name="pns" method="post" action="#"><select name="nums1"  onchange ="chng(this)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option></select>
    <input type="text" name=p4 value="4.5">
    <input type="text" name=p5 value="4.5"><select name="nums2"  onchange ="chng(this)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input type="text" name=p4 value="6.4">
    <input type="text" name=p5 value="6.4"><select name="nums3"  onchange ="chng(this)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input type="text" name=p4 value="3.8">
    <input type="text" name=p5 value="3.8">
     
    </form>
      

  3.   

    TO:shyslysky(飞天)
    你太厉害了。佩服。