<table width="30%" height="53" border="0" cellpadding="0" cellspacing="0" id="t"> 
  <tr> 
    <td width="14%" align="center">&nbsp;</td> 
    <td width="14%" align="center">s</td> 
    <td width="18%" align="center">M</td> 
    <td width="18%" align="center">L</td> 
    <td width="18%" align="center">XL</td> 
    <td width="18%" align="center">XXL</td> 
  </tr> 
   
  <tr> 
    <td align="center">红色</td> 
    <td align="center"><input name="s_红色" type="text" id="s_红色" size="4" /></td> 
    <td align="center"><input name="m_红色" type="text" id="m_红色" size="4" /></td> 
    <td align="center"><input name="l_红色" type="text" id="l_红色" size="4" /></td> 
    <td align="center"><input name="xl_红色" type="text" id="xl_红色" size="4" /></td> 
    <td align="center"><input name="xxl_红色" type="text" id="xxl_红色" size="4" /></td> 
  </tr> 
  
  <tr> 
    <td align="center">白色</td> 
    <td align="center"><input name="s_白色" type="text" id="s_白色" size="4" /></td> 
    <td align="center"><input name="m_白色" type="text" id="m_白色" size="4" /></td> 
    <td align="center"><input name="l_白色" type="text" id="l_白色" size="4" /></td> 
    <td align="center"><input name="xl_白色" type="text" id="xl_白色" size="4" /></td> 
    <td align="center"><input name="xxl_白色" type="text" id="xxl_白色" size="4" /></td> 
  </tr>   
</table> 
<p> 
  <input type="button" name="button" id="button" value="获取值" /> 
</p> 颜色一行是从数据库循环出来的,如果用js或jQuery动态的获取文本框中的值。我文本框命名是按‘尺寸_颜色’,这样命名是否妥当?要怎样才能获取文本款中的值?

解决方案 »

  1.   

    动态获取文本框的值不难,问题在于你想怎么获取。如果是说点击获取值之后,获取到每一个input里的值并对应input名称的话。可以这样写
    jQuery:$("#button").click(function(){
       $(":input").each(function() {
          $(this).attr("name") //这是你的文本框的名称
          $(this).val()  //这是你文本框的值
       });
    });
      

  2.   

    <table id="detail"><tbody><tr><td>标准</td></tr& gt;<tr><td><input type="text" id="field1" value="11"></td></tr><tr><td><input type="text" id="field1" value="22"></td></tr></tbody></table>
    <script type="text/javascript">
    onload = function(){
      if(document.all){
    var objs = document.getElementById("detail").getElementsByName("field1");
      for(var i=0;i<objs.length;i++){
      alert(objs[i].value);
      }
    }
      objs = document.getElementById("detail").getElementsByTagName("input");
    for(var i=0;i<objs.length;i++){
    if(objs[i].id == "field1"){
    alert(objs[i].value);
      }
     
      }
      objs1 = document.getElementById("detail").firstChild.childNodes[1].firstChild.firstChild.value;
      alert(objs1);
      objs2 = document.getElementById("detail").firstChild.childNodes[2].firstChild.firstChild.value;
      alert(objs2);
    }
    </script>
    这段是回答别人的帖子的,希望对你有用!
      

  3.   


    恩,这个好简单,代码又少,
     如果,我获取了各个input的值后,在另外一个页面想把它在组装起来,有什么好的办法处理?
      

  4.   

    我已经获取了值,且组装成json格式。order={ "s_红色":"23", "m_红色":"0", "l_红色":"32", "xl_红色":"0", "xxl_红色":"0", "s_黑色":"0", "m_黑色":"23", "l_黑色":"0", "xl_黑色":"0", "xxl_黑色":"23", "s_白色":"0", "m_白色":"0", "l_白色":"0", "xl_白色":"34", "xxl_白色":"0" }
    现在我想把这些数据在还原回去(主要是要让用户后期可以修改数据),搞了半天没弄出来。或者有什么方法可以还原回去吗?不知道,我这思路有没有错?
      

  5.   

    var order={ "s_红色":"23", "m_红色":"0", "l_红色":"32", "xl_红色":"0", "xxl_红色":"0", "s_黑色":"0", "m_黑色":"23", "l_黑色":"0", "xl_黑色":"0", "xxl_黑色":"23", "s_白色":"0", "m_白色":"0", "l_白色":"0", "xl_白色":"34", "xxl_白色":"0" }
    for(o in order) {
    $(o).val(order[o]);
    }
      

  6.   

    $(o).val(order[o]);
    ==>
    $("#" + o + "").val(order[o]);