表中的可编辑行 - 是否在元素错误练习中使用记录ID?

时间:2016-11-08 14:56:13

标签: php jquery html

我尝试使用jquery创建一个功能来编辑类别名称的HTML表。

到目前为止,我的表格是使用PHP / MySQL填充的。一切正常。

我已阅读jQuery - Edit a table row inline但是,如果您想将其保存回数据库,那么这似乎无法解决您如何识别记录的问题。

我见过这样做的解决方案:

<tr id="2">
  <td>Foo</td>
</tr>
<td id="3">
   <td>Bar</td>
</td>

这种在tr元素上使用ID的方法是否可以接受?它似乎有些落后,因为我并不是真的理解ID应该在标记中使用?例如,如果你有多个表(我的情况不是这样),那么标记中的所有ID都应该是唯一的,这样就不好了吗?

有没有更好的方法来解决这个问题?

仅仅是为了获取一些背景信息,这就是我希望实现的目标:

  1. 该表在页面加载时呈现。
  2. 点击&#39;编辑&#39;桌子上的按钮。
  3. 这会使行变得可编辑 - 我相信类似的内容可以用于我发布的链接。
  4. 更改&#39;编辑&#39;按钮说&#39;保存&#39;。单击此按钮会触发ajax调用,但这需要将行ID和文本框值发布回我的PHP脚本。
  5. 数据相对简单 - 每个表行只有一个ID和类别名称。

1 个答案:

答案 0 :(得分:2)

您应该关注的是data attributes

你如何使用它们是..

<tr data-id="2">
 <td>Foo</td>
 ....
</tr>
<tr data-id="3">
 <td>Bar</td>
 ....
 </td>

并且假设您需要获取已点击行的ID,您可以使用.data()方法执行此操作。

...
$('tr').on('click', function(){
 id = $(this).data('id');
 ...
});
...