2013-03-25 2 views
1

Я использую jQuery Star Rating Plugin. Когда страница загружается, динамическое значение должно быть установлено с возможностью изменения этого в диалоговом окне jquery с новым выбранным значением. У меня есть что-то вроде этого:jQuery Star Rating Функция обратного вызова плагина с ранее установленным значением по умолчанию

$("input#currentRatingDisplay").rating('select', '${rating}');// dynamic value that does not get selected?!? 

    $("input#currentRatingDisplay").rating({ 
     callback: function(value, link){ 
      $("#rateIt").rating('select', value, false); // stars in ui dialog to get persisted in the db 
       $("#dialog-rating").dialog("open"); 
      } 
    }); 

Функция обратного вызова с передачей значения к звездам в диалоге работы, но проблема в том, что начальная оценка не выбран. Есть идеи? Также - есть ли способ прочитать кнопку сброса? Спасибо.

+0

ли 'предупреждение ('$ {рейтинг}');' показать значение? –

+0

Привет, Сандер, проходя через отладку. § {rating} заменяется. Если я удалю часть обратного вызова, она будет правильно отображаться. Я попробую позже с предупреждением - спасибо за подсказку. – Adrian

ответ

0

Для этого не требуется javascript. Как говорит сайт: Используйте свойство checked, чтобы указать начальное/стандартное значение элемента управления.

Так что-то вроде:

<c:forEach var="random" items="${item}"> 
    <c:if test="${fn:item == rating}"> 
     <input name="star2" type="radio" class="star" checked="checked"/> 
    <c: else> 
     <input name="star2" type="radio" class="star"/> 
</c:forEach> 
+0

Эй, Элгер, спасибо за ответ. Я забыл упомянуть, что начальное значение динамическое, я получаю его из весенней модели. – Adrian

+0

Я не знаком с весной, но я обновил ответ с помощью некоторого весеннего псевдокода. Надеюсь, что я понял, куда я иду. Таким образом, вам не нужно делать какие-либо трюки с javascript впоследствии. –

+0

Отлично, он работает - спасибо за предложение Elger, он настолько изящный. – Adrian