0

我从 db 动态读取值并在 DOM 中附加元素,我在下面的代码中读取一个字段并将其存储在 id 例如下面示例中的 11 中。然而,表中还有一个名为 comments 的字段,我应该在 html 元素上设置什么,这样我就不需要再次触发 db 查询来进行评论了?

 <div id="selectionbox" style="display:inline-block">
    <img style="display:inline-block" id="activity_image11" src="../images/Desert.jpg" width="100" height="100">
    <input type="checkbox" class="class1" id="11" style="display:inline-block">
</div>

我得到了许多如上所述的选择框,我将它们附加到 DOM 中,稍后我将使用获取选定的复选框,

temp.push($( "div#"+this.id ).find( "input[type=checkbox]:checked" ).map(function() {
        return this.id
    }).get());

我的问题是,如果我要存储评论in data-value="10" ,那么我该如何获取这些数据字段???

4

2 回答 2

1

如果我理解正确,您正在尝试从中获取值data-value

您可以简单地获取数据值,例如

$('#comments').data('value');

或者

 $('#comments').attr('data-value');
于 2013-11-06T11:59:40.970 回答
1

您可以在复选框 [data-value] 中添加一个额外的属性。您的代码将如下所示:

<div id="selectionbox" style="display:inline-block">
    <img style="display:inline-block" id="activity_image11" src="../images/Desert.jpg" width="100" height="100">
    <input type="checkbox" class="class1" id="11" data-comment="some comments for 11" style="display:inline-block">
    <input type="checkbox" class="class1" id="12" data-comment="some comments for 12" style="display:inline-block">
    <input type="checkbox" class="class1" id="13" data-comment="BC" style="display:inline-block">
</div>

然后稍后您可以从复选框中获取此值:

$("#selectionbox  input[type=checkbox]:checked").attr("data-comment");

PS 如果评论数据很大,那么我建议不要使用新属性,而是使用 jQuery数据

于 2013-11-06T12:18:36.087 回答