2013-01-04 97 views
2

我有以下功能,我在我的页面中有一个结果div,我想动态地添加一些文本在其中的新div,第一个.append的作品和div创建,但第二个append doesn没有工作,也没有文字附加到它。谁能告诉我为什么?jquery动态部门创建

$.getJSON(docTypeQueryURL + "id=" + doctype, function (data) { 
    var div = data.TYPE_ID; 
    var resultsDiv='#results'; 
    var divid = "'#" + div + "'"; 
    $(resultsDiv).append("<div id='" + div + "'><strong>" + div + "</strong></div>"); 
    $(divid).append("<p>" + xyzz + "</p>"); 
}); 

回答

2

假设xyzzdata.TYPE_ID定义和正确的,你有

var divid = "#" + div; 
+0

除了@dystroy说了什么之外,真的不需要定义var resultsDiv(至少在当前场景中)。删除该行并将$(resultsDiv)更改为$('#results') –

+0

非常感谢,它的确行得通,我还有额外的报价。 – Prithvi514

0

divid是有一个额外的single quote更换

var divid = "'#" + div + "'"; 

。删除它

var divid = "#" + div; 

此外,你不必使用#与你的divid。好像你正在使用它,就像我们在jQuery中看到的那样。查看更新的代码。这只是在编写选择器时才需要

$.getJSON(docTypeQueryURL + "id=" + doctype, function (data) { 
    var div = data.TYPE_ID; 
    var resultsDiv='#results'; 
    var divid = div; 
    $(resultsDiv).append("<div id='" + div + "'><strong>" + div + "</strong></div>"); 
    $(divid).append("<p>" + xyzz + "</p>"); 
});