目前我购买的主题设置了星级评分系统。从我能够提出的,JQuery函数根据点击的星的ID来计算评级,由以下代码控制:
<div class="rating-send-form">
<div class="rating-ipnuts">
<div class="rating-details">
<button class="send-rating"><?php _e('Post Wait Time','ait'); ?></button>
<div class="rating clearfix" data-rating-id="<?php echo $i; ?>" data-rated-value="0">
<div class="stars clearfix">
<?php for($j = 1; $j <= $starsCount; $j++) { ?>
<div class="star" data-star-id="<?php echo $j; ?>"></div>
<?php } ?>
</div>
</div>
发送点击的data-star-id以计算评级,如下所示:
// rating
$(document).on("click", "#ait-rating-system .rating-send-form .star", function(event) {
var rating = $(this).parent().parent();
var ratingId = rating.data('rating-id');
var id = parseInt($(this).data('star-id'));
$(this).parent().find('> div').slice(0,id).css("background","url('"+themeUrl+"/design/img/rating_star_active.png') no-repeat 0 0");
rating.data('rated-value',id).addClass('already');
});
我想做的是用简单的文字输入字段替换星星点击。如何向此函数发送文本值以替换当前发送的data-star-id?
答案 0 :(得分:0)
如果我理解你的问题,你可以使用.val()
获取输入的值答案 1 :(得分:0)
你应该首先创建文本字段并将事件绑定到它,让我们说模糊事件。在模糊时,您应该按如下方式更改评级:
$('#textfield1').on("blur",function(event) {
var rating = $('#ratingdiv');// you should give your div an id to be able to target it
rating.data('rated-value',$(this).val());
});
我希望我能得到你的观点