<html>
<head>
<title>提问</title>
<script language="javascript">
function put(){
   var textvalue="";
   for(i=0;i...;i++){
    ..................
    textvalue+=(i行text的value);
   }
</script>
</head>
<body>
<form name="tt">
<table width="200" border="1">
  <tr>
    <td><input name="k1" type="checkbox" value="kkkkkkk"></td>
    <td><input name="f1" type="text" value="dfgdgdf"></td>
  </tr>
  <tr>
    <td><input name="k1" type="checkbox" value="kksdf"></td>
    <td><input name="f1" type="text" value="dfgdfgd"></td>
  </tr>
  <tr>
    <td><input name="k1" type="checkbox" value="kksdfs"></td>
    <td><input name="f1" type="text" value="dfgdgfd"></td>
  </tr>
  <tr>
    <td><input name="k1" type="checkbox" value="kksdfs"></td>
    <td><input name="f1" type="text" value="dfsdfsfds"></td>
  </tr>
  <tr><td><input name="a1" type="button" value="check" onclick="put()"></td>
  </tr>
</table>
</form></body>
</html>
这样的一个table,写put()方法,让每行的checkbox如果被选中就把text的value传出来。put方法中的...是小弟想不通的地方,那位给解答一下

解决方案 »

  1.   

    你的checkbox的个数是已知还是未知的?已知的好办,如果未知就用循环来解决,
      

  2.   

    首先要说这个和java没有关系,纯js问题~<html>
    <head>
    <title>提问</title>
    <script language="javascript">
    function put()
    {
    var chks = document.all.item("k1");
    for(var i=0;i<chks.length;i++)
    {
    if(chks[i].checked)
    {
    var checkValue = parseInt(chks[i].value);
    alert(document.all.t1.rows(checkValue).cells(1).innerText);
    }
    }
    }
    </script>
    </head>
    <body>
    <form name="tt">
    <table width="200" border="1" id="t1">
      <tr>
        <td><input name="k1" type="checkbox" value="0"></td>
        <td>这是第一行</td>
      </tr>
      <tr>
        <td><input name="k1" type="checkbox" value="1"></td>
        <td>这是第二行</td>
      </tr>
      <tr>
        <td><input name="k1" type="checkbox" value="2"></td>
        <td>这是第三行</td>
      </tr>
      <tr>
        <td><input name="k1" type="checkbox" value="3"></td>
        <td>这是第四行</td>
      </tr>
      <tr><td><input name="a1" type="button" value="check" onclick="put();"></td>
      </tr>
    </table>
    </form></body>
    </html>
      

  3.   

    好办,checkbox定义成统一的name,checkbox中的各个value设置成对应的text的id:
    1)通过document.getElementsByName(name)取得所有的checkboxs;
    2)通过循环判断checkboxObj.checked来确定是否要加入对应的text的值,若checked为true,则取text的值;其中checkboxObj=checkboxs[i];
    3)通过document.getElementById(checkboxObj.value)来取得对应的text对象tObj,再通过tObj.value取得text的值;
    4)OK.
      

  4.   

    <script>
     function dian(pos){
         var text=document.getElementsByName("ttt");
         alert(text[pos].value);
        }
    </script>
    <table>
    <%
    for(int i=0;i<1;i++){
    %><tr>
    <td>
    <input type="checkbox" value="<%=i%>" name="aaa" onclick="dian(<%=i%>);">
    </td>
    <td><input type="text" name="ttt" value="<%=i%>"></td>
    </tr>
    <%
    }
    %>
    </table>