我正在尝试使用之前已经附加的 jQuery 访问元素。我知道使用“普通”命令无法看到动态添加的元素 - 我已经看到了许多其他涉及 .link() 和 .on() 的问题 - 但我不确定如何应用这些答案这个案例。为可能的重复道歉,但我是 jQuery 的新手。
这是一个基本示例 - 我在表格中添加一行和一个单元格(这通常是在一个循环中) - 并将图像放入单元格中。然后稍后,我想访问此图像的 src 并更改它:
addTableRows = function(){
$("#tableBody")
.append($("<tr class='tableRow>")
.append($("<td valign='top' align='center'>")
.append($("<img src='expand-icon.gif'>")
.attr('id','expand-icon')
.click(function(){
iconClicked();
}))));
iconClicked = function(){
var test = $("#expand-icon").attr("src");
alert(test);
}
目前,test
返回为“未定义”。如何访问expand-icon
图像?
编辑:
(添加更多细节以包括表格单元格的循环和唯一 ID)
addTableRows = function(response){
var members = response['member'];
$.each(members, function (idx, data) {
var currentID = data['identifier'];
$("#tableBody")
.append($("<tr class='tableRow'>")
.append($("<td valign='top' align='center'>")
.append($("<img src='expand-icon.gif'>")
.attr('id','expand-icon' + currentID)
.click(function(){
iconClicked(currentID);
})
)
)
);
});
}
iconClicked = function(currentID){
var test = $("#expand-icon" + currentID).attr("src");
alert(test);
}