0
我正在使用JQuery rateit插件在我的流星應用程序中實現星級評分。我在應該留下評論和評分點的表單中使用rateit。爲什麼rateit中的星星不會出現,除非我刷新頁面?
{{#if reviewedProvider}}
<hr>
<strong>Review Details</strong>
{{#with providerReviewDetails}}
<p>{{this.reviewMessage}}</p>
<span class="rateit" data-rateit-value="{{this.pointsRated}}" data-rateit-readonly="true"></span>
{{/with}}
{{else}}
<hr>
<form id="reviewProvider">
<div class="form-group">
<label for="writeReview">Write a review</label>
<textarea name="reviewMessage" id="writeReview" rows="3" class="form-control"></textarea><br>
<label>Rate provider</label><br>
<span class="rateit"></span>
</div>
<button class="margin-top-5 btn btn-sm btn-primary" type="submit">Submit</button>
</form>
{{/if}}
並且在提交表格後,表格應該被評論信息和星星評定。
'submit #reviewProvider': function(event, template) {
event.preventDefault();
var providerId = this.assignedProvider;
var buyerId = this.userId;
var jobId = this._id;
var timeReviewed = new Date();
var ratedPoints = Template.instance().ratingPoints.get();
var reviewMessage = "";
$('textarea[name="reviewMessage"]').each(function() {
reviewMessage += $(this).val();
})
Meteor.call('reviewProvider', providerId, buyerId, jobId, timeReviewed, ratedPoints, reviewMessage, function(error) {
if(error) {
toastr.error('Failed to submit review. Please try again.');
}
})
}
提交表單後,我可以看到表單被替換爲評論內容。我可以看到評論信息,但除非刷新頁面,否則看不到星級。
然後初始化插件?如果我猜測,rateit初始化函數僅適用於頁面呈現。這將解釋爲什麼頁面刷新觸發星星被看到。 – blueren