This是我的代码:
<div style="display:none;">
<div id="example">
<div class="child">Hello</div>
</div>
</div>
<div id="result"></div>
htmlSedi="";
sedi(1);
sedi(2)
$("#result").append(htmlSedi);
function sedi(param) {
var htmlSede = $('#example');
if(param==1)
htmlSede.find('.child').hide();
htmlSedi=htmlSedi+htmlSede.html();
}
结果我的方面是至少将一个“Hello”打印到div result
中,但事实上它并没有;我认为问题在于:
var htmlSede = $('#example');
指向同一个对象。那么,我如何创建#example
的新“实例”?
答案 0 :(得分:1)
您错过了ID选择器#
填充#result
的正确方法是:
htmlSedi.append(htmlSede.html());
您的代码应如下所示:
sedi(1);
sedi(2);
function sedi(param) {
var htmlSedi = $("#result");
var htmlSede = $('#example');
if(param==1)
htmlSede.find('.child').hide();
htmlSedi.append(htmlSede.html());
}
你可以根据自己的需要使用任何你想要的,.append()
,.prepend()
,.after()
,......
答案 1 :(得分:1)
代码中的一些错误
$("result").append(htmlSedi);
应该是
$("#result").append(htmlSedi);
答案 2 :(得分:1)
答案 3 :(得分:1)
您有错误
$("result").append(htmlSedi);
应该是
$("#result").append(htmlSedi);
编辑 - 您可以使用.clone(true);
htmlSedi="";
sedi(1);
sedi(2)
$("#result").append(htmlSedi);
function sedi(param) {
var htmlSede = $('#example').clone(true);
if(param==1){
htmlSede.find('.child').hide();
}
htmlSedi=htmlSedi+htmlSede.html();
}
pastebin http://jsbin.com/ovejil/edit#preview
答案 4 :(得分:0)
$("#result").append(htmlSedi); /*you forgot the #*/
你也忘记了sedi(2)