将javascript变量附加到HTML属性

时间:2015-10-09 21:26:11

标签: javascript jquery html

我有多个表通过php函数输出。然后使用DataTables插件格式化表格,这需要我在文档准备好后引用表格ID:

$(document).ready( function () {
   for (i = 0; i < ntables; i++) { 
       $('#Main_Data_Table'+i).DataTable();
   }
} );

因此,当我创建表格时,我只想将表格编号(ntables)附加到id类型,如下所示:

<script>ntables++;</script>
<table id="Main_Data_Table<script>echo ntables</script>" class="display">

我以前习惯使用PHP,因此回声当然不起作用。当我创建表时,如何简单地将ntables变量附加到ID?

3 个答案:

答案 0 :(得分:0)

如果要创建具有动态ID的HTML元素,则需要在编程语言中使用循环。您可以使用服务器端脚本来创建HTML,或者在Javascript中构建所有表:

for (var i = 0; i < ntables; i++) {
    $("#container").append($("<table>", { 
        id: "Main_Data_Table_" + i,
        "class": "display"
    }).DataTable());
}

答案 1 :(得分:0)

JS方式

$(document).ready( function () {

    var tables = $("table.display");

    for(i = 1; i <= tables.length; i++){
      $(tables[i]).attr("id", "Main_Data_Table"+i);
    }    

} );

因此,在您的PHP代码中,您只需要使用class="display"

生成一堆表

答案 2 :(得分:-1)

最好的方法是在打印表时直接从PHP添加id。如果出于某种原因,这是不可能的,那么你可以尝试.getElementsByClassName(&#34; some class&#34;)然后更改每个元素id。