我已阅读其他帖子,但我仍不确定为什么我的代码无效。我正在寻找一个id为feature的元素 - ###来删除。
$('.model-gallery-image').click(function(){
featured_remove($(this).attr('data-model-id'));
});
function featured_remove(model_num){
console.log('Remove Featured Image: #featured-' + model_num);
$('#featured-' + model_num).remove();
}
我已将model_num记录到控制台以验证该号码是否已通过。
以下是我通过浏览器检查时的html标记。
<img src="model-gallery/37eafefa4964d985cb6f2e3bda07458c9b0728f5.jpg" id="featured-6">
我不确定我错过了什么。
答案 0 :(得分:0)
可能是你的脚本在元素实际存在之前被调用,你应该检查,否则我不知道什么是错的
答案 1 :(得分:0)
在您的函数中featured_remove()
未定义,因为它超出了上下文。
传递参数以使用外部函数:
//define your function
var featured_remove = function (model_num){
console.log('Remove Featured Image: #featured-' + model_num);
$('#featured-' + model_num).remove();
}
//using closure
$('.model-gallery-image').click(function(featured_remove){//pass variable here
featured_remove($(this).attr('data-model-id'));
});