我有这段代码
$(document).ready(function () {
$(".rating-stars").ratingbig({
callback: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip[0].data = value;
$('#rating-result_' + element[1]).html(ratingMnemos[tip[0].data] || ratingMnemos[0]);
},
focus: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip.html(ratingMnemos[value]);
},
blur: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip[0].data = value;
$('#rating-result_' + element[1]).html(ratingMnemos[tip[0].data] || ratingMnemos[0]);
}
});
});
我通过ajax将一些代码添加到页面中。 nu评级不适用于页面中新添加的元素。我被卡住了,因为当在页面中添加新元素时,我找不到触发函数的方法。
提前致谢
答案 0 :(得分:1)
我相信您的问题是在初始函数调用后向页面添加类rating-stars
的新项目时该怎么做。
在初始页面加载后,您提供的代码只运行一次。 在向页面添加新项目之后,您必须调用类似的,以便将其应用于这些新项目。例如,在AJAX回调期间。
示例:
$.ajax({
// Omitted actual call
success: function(){
// Omitted additional callback actions
applyRatingBig();
}
});
$(document).ready(function () {
applyRatingBig();
});
function applyRatingBig() {
// Consider adding code to ensure that this only gets called once per object - for example, you could set a flag once it has been called for a given object
$(".rating-stars").ratingbig({
callback: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip[0].data = value;
$('#rating-result_' + element[1]).html(ratingMnemos[tip[0].data] || ratingMnemos[0]);
},
focus: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip.html(ratingMnemos[value]);
},
blur: function (value, link) {
var element = $(this).parent().parent().parent().attr('id').split("_");
var tip = $('#rating-result_' + element[1]);
tip[0].data = value;
$('#rating-result_' + element[1]).html(ratingMnemos[tip[0].data] || ratingMnemos[0]);
}
});
}