Jquery - 在设置属性时附加HTML5模板?

时间:2014-08-19 23:49:39

标签: jquery html5

有没有简单的方法可以将HTML 5模板添加到正文中,同时更新属性? ..在我的情况下,我试图更新id attr。预期的输出是不更新#myTemplate的id,但是我添加了模板以将div id设置为特定的。

<body>
<template id='myTemplate'>
   <div>My Div Example </div>
</template>

<script>
   $(function(){
       $("body").append($('#myTemplate').html());
   });
</script>
</body>

---&GT;脚本运行后的预期添加(正文):

<div id="someNewId">My Div Example</div>

2 个答案:

答案 0 :(得分:1)

这应该可以解决问题,如果你想沿着html()方向前进,并且实际将内容包装在div内,因为你当前的代码只会输入template的内容在body内但没有包裹div

$(function(){
    $("body").append($("<div id='myNewId'>").html($('#myTemplate').html()));
});

答案 1 :(得分:1)

将它放在jQuery对象中,编辑所需的所有属性,然后将其附加到正文:

var html = $('#myTemplate').html(); //or any other way to generate html
var $newContent = $(html);
$newContent.filter('div').attr('id','someNewId');
$('body').append($newContent);