(完整代码如下)
这个
$('#' + id).parent().append('<div id="pop-up">hello</div>');
确实有效。但这
$('#' + id).parent().append('<div id="pop-up-' + id + '">hello</div>');
没有。
第一个版本有效的事实让我假设问题不是 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");
}
});
}
最佳答案
.append()
和.appendTo()
方法执行相同的任务。- 主要区别在于具体的语法、内容和目标的位置。
- 对于 .append(),方法前面的选择器表达式是插入内容的容器。
- 另一方面,使用 .appendTo() 时,内容位于方法之前,作为选择器表达式或动态创建的标记,并将其插入到目标容器中。
代码示例
$('<div>Hello</div>', {
"id": "pop-up" + id
}).appendTo($('#' + id).parent());
仅供引用,
请确保该元素存在于 DOM 中,并且您将其 append 到正确的选择器中。
希望这有帮助。
关于jQuery append() 不适用于连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39910600/