我的代码附加如下:
if (json.expData[i] != null) {
$('#text' + i)
.append("<br><br><img src='/balloon.png'>" + json.expData[i]);
}
当用户点击按钮时,此代码会运行并附加。但是,如果用户再次单击该按钮,它会再次附加,依此类推。
是否有某些方法可以检测到数据已经被追加并且仅被追加 如果这是第一次添加吗?
答案 0 :(得分:1)
您可以在元素上存储布尔属性,例如data-isappended
。
if (json.expData[i] != null) {
var $text = $('#text' + i);
if (!($text.data("isappended"))){
$text.append("<br><br><img src='/balloon.png'>" + json.expData[i]);
$text.data("isappended", true);
}
}
答案 1 :(得分:0)
检查img
内是否有#text
标记,应该这样做
if ($('#text' + i).find('img').length > 0)
{
$('#text' + i).append("<br><br><img src='/balloon.png' />" + json.expData[i]);
}
答案 2 :(得分:0)
如果您没有id
包含#text
的任何其他元素,那么您可以尝试这样:
if( $('[id^=text]').length ) { // if some element with id text exists
} else { // not exists
}