Hi folks, I have a problem which I have a kludgy solution for, and have to believe there is a more elegant way of doing it... Here's the scenario.
The page displays a non-editable list of records in a database, with a checkbox at the beginning of each row. The list is indeterminate length, based on selection criteria entered by the user in the previous page. The user selects n number of rows, using the check boxes. Those rows are to be deleted from the database. The trick is that the rows have a three column key. One is constant based on the user, so I need to get 2 pieces of information from each row before I can delete it. My kludge is to have the value of the checkboxes be the indexId of the logic:iterate. Each row has two hidden input fields, with the two required key values. Something like this: <logic:iterate id="item" name="listForm" property="txnList" type ="Transaction" indexId="counter"> <tr> <td width="69" align="center"> <input type="checkbox" name="selectedTxns" value="<%=counter%>"/> </td> .... display data ... <td width="88"><%=item.getTotal()%></td> <!-- Hidden input fields so we can retrieve all the required data about the selected transaction... --> <td class="sidelink" width="1"> <input type="hidden" name="orderIds" value="<%=item.getOrderID ()%>"/> </td> <td class="sidelink" width="1"> <input type="hidden" name="deptAreas" value="<%=item.getDeptArea ()%>"/> </td> </tr> </logic:iterate> In the formData bean, I have three String [ ] attributes to accept the values of the checkbox and the two hidden fields. The problem is that since there is data in the hidden input fields for every row, I get every value back in the array, instead of only the data for the rows which are checked. What I have to do in the action is read the values from the String [ ] for the checkbox , and use that value as the index into the other two string arrays. Like I said, its kludgy, but it works... But, I have to believe there's a way to send back an array of beans, with only the values of the fields for those rows which are checked, but I can't find anything in books or searching the web which describes how to do this. Does anyone have a cleaner way to do this type of thing? Thanx! c'ya Mike ---- Mike Boucher [EMAIL PROTECTED] Edgil Associates www.edgil.com "Don't take life too seriously, you'll never get out of it alive!" --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]