I add and delete table rows using jQuery. I can easily add lines, but I have problems deleting those that were created.
You can view the page in action here: http://freshbaby.com/v20/wic/request_quote.cfm with the corresponding code inserted below.
HTML
<table style="width:600px;" id="product-list" summary="Lists details about products users wish to purchase"> <thead valign="top" align="left"> <tr> <th>Products</th> <th>Language</th> <th>Quantity</th> <th></th> </tr> </thead> <tbody valign="top" align="left"> <tr> <td> <cfselect query="getProductListing" name="product" size="1" display="name" value="name" queryPosition="below"> <option value=""></option> </cfselect> </td> <td> <select name="language" size="1"> <option value="English">English</option> <option value="Spanish">Spanish</option> </select> </td> <td> <cfinput name="quantity" required="yes" message="Enter your desired quantity" size="10" maxlength="3" mask="999"> </td> <td valign="bottom"><a href="javascript://" class="addrow">Add Another Product</a></td> </tr> </tbody> </table>
JavaScript:
<script> $(function() { var i = 1; $(".addrow").click(function() { $("table#product-list tbody > tr:first").clone().find("input").each(function() { $(this).attr({ 'id': function(_, id) { return id + i }, 'value': '' }); }).end().find("a.addrow").removeClass('addrow').addClass('removerow').text('< Remove This Product') .end().appendTo("table#product-list tbody"); i++; return false; }); $("a.removerow").click(function() { </script>
When I click a link to delete the line that contains the link, nothing happens. There is no script error, so it should be logical.
javascript jquery html-table dom-traversal jquery-traversing
Angry spartan
source share