(下面的完整代码)
此
$('#' + id).parent().append('<div id="pop-up">hello</div>');
确实有效。但是这个
$('#' + id).parent().append('<div id="pop-up-' + id + '">hello</div>');
没有按&#39;吨
第一个版本有效的事实让我假设问题不是id
变量......
所以完整的代码是
function clickOnElement(id) {
var obj = {};
obj.clicked = String(id);
var jsonData = JSON.stringify(obj);
$.ajax({
type: 'POST',
url: '../db/RequestHandler.ashx',
data: jsonData,
contentType: 'application/json; charset-utf-8',
success: function (response) {
// Add the div for the dialog-box
$('<div>Hello</div>', {
"id": "pop-up" + id
}).appendTo($('#' + id).parent());
},
error: function () {
console.log("request error");
}
});
}
答案 0 :(得分:2)
使用 .appendTo()
.append()
和.appendTo()
方法执行相同的任务。代码示例
$('<div>Hello</div>', {
"id": "pop-up" + id
}).appendTo($('#' + id).parent());
仅供参考,
请确保元素存在于DOM中,并将其附加到正确的选择器中。
希望这有帮助。
答案 1 :(得分:1)
使用jQuery(html, attributes)创建HTML,您可以安全地使用引号乱码
$('#' + id)
.parent()
.append($('<div>', {
id: "pop-up-" + id ,
text: "hello"
});
答案 2 :(得分:1)
尝试以下
var parent = $('#' + id).parent();
var el = $('<div>', {id: "pop-up"+id,text:"hello"});
el.appendTo(parent);
向创建的对象添加文本的正确方法是使用text属性: