如何将动态更改的文本框值存储为复选框值?

时间:2013-03-25 07:36:57

标签: java html jsp checkbox

我有一个显示数据库数据的表。该表有3列,第一列是复选框。

<sql:setDataSource var="datasource" driver="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost/PhoneBookDB" user="root"
    password="12345" />

<sql:query var="pbook" dataSource="${datasource}">
    SELECT * FROM phoneBook
</sql:query>

<html:form action="/PhoneBookAction.do" method="post"  >        
    <table align="center" bgcolor="Khaki" border="5" bordercolor="SaddleBrown" cellpadding="10">
        <thead>
            <tr>
                <td align="center" ><b>Select</b></td>
                <td align="center" ><b>Name</b></td>
                <td align="center" ><b>Phone Number</b></td>
            </tr>
        </thead>

<c:forEach items="${pbook.rows}" var="row">
  <tr>
    <td align="center"> <input type="checkbox" align="middle" name="record" value="${row.id},${name},${pNum}"> </td>
    <td> <input type="text" name="name" maxlength="30" value="${row.c_name}" >  </td>
    <td> <input type="text" name="pNum" maxlength="10" value="${row.p_num}">   </td>
  </tr>
</c:forEach>

    </table>
    <html:submit property="method"  value="Edit"  />    
    <html:submit property="method" value="Delete" />
</html:form>

我希望用户能够更新来自JSP本身的列名称电话号码的值。我不知道如何将文本框中的更新值设置为复选框的值属性,以便可以将更新后的值发送到servlet,然后再发送模型,用于在DB上操作。
我想在不使用JavaScript的情况下解决这个问题。
请帮忙!谢谢......

1 个答案:

答案 0 :(得分:1)

只需将行ID作为复选框的值传递即可。不要在checikbox值上附加名称和pNum。

在提交时,在您的操作类中,根据需要将名称和pNum附加到rowId。

我希望这会有所帮助。我没有看到将名称和pNum附加到row.id作为jsp页面本身的复选框值的任何意义。