Php 表中的可编辑行-正在使用a<;tr>;坏习惯?
我正在尝试使用jquery创建一个功能来编辑类别名称的HTML表 到目前为止,我的表是使用PHP/MySQL填充的。这一切正常 我读过,但这似乎并不能解决如果要将记录保存回数据库时如何识别记录的问题 我见过这样的解决方案:Php 表中的可编辑行-正在使用a<;tr>;坏习惯?,php,jquery,html,Php,Jquery,Html,我正在尝试使用jquery创建一个功能来编辑类别名称的HTML表 到目前为止,我的表是使用PHP/MySQL填充的。这一切正常 我读过,但这似乎并不能解决如果要将记录保存回数据库时如何识别记录的问题 我见过这样的解决方案: <tr id="2"> <td>Foo</td> </tr> <td id="3"> <td>Bar</td> </td> 福 酒吧 这种在tr元素上使用ID的方法
<tr id="2">
<td>Foo</td>
</tr>
<td id="3">
<td>Bar</td>
</td>
福
酒吧
这种在tr
元素上使用ID的方法是否可以接受?它似乎有点落后,因为这并不是我真正理解的在标记中应该使用ID的方式?例如,如果您有多个表(在我的例子中不是这样),那么标记中的所有ID都应该是唯一的,这样做不好吗
有没有更好的方法来处理这个问题
仅提供一些背景信息,以下是我希望实现的目标:
数据相对简单-每个表行只有一个ID和类别名称。您应该了解的是 你如何使用它们是
<tr data-id="2">
<td>Foo</td>
....
</tr>
<tr data-id="3">
<td>Bar</td>
....
</td>
我个人认为这很好
id
属性应该标识元素,这是您正在做的事情,而不管id
内容的来源。但是我认为id应该在一组标记中只使用一次(唯一)?我没有多个表,但是如果我有,它们都有,例如,那是无效的标记吗?是的,但是如果id
值来自您的数据库,则不应该有任何重复项-我希望不会有比HTM更大的问题没有重复项,只有一个表。但是考虑一下在同一个网页上编辑2个(或更多)不同表的情况。如果记录ID存储在多个表中,则可能有相同的记录ID。例如,数字“3”可以是my categories表中的ID,也可以是posts表中的ID。但是您不应该在标记中使用它作为ID,因为这样它将是重复的?在这种情况下,我会在ID
值前面加前缀,例如cat-3
,post-3
我试图编辑它,$('tr')
-需要在'tr'上加引号。我不能编辑这个,因为它说编辑必须至少6个字符。但是效果很好,非常感谢。
...
$('tr').on('click', function(){
id = $(this).data('id');
...
});
...