0

我正在使用 jquery 比率(评级脚本)。我有多个评级选项,如果没有选择任何一个,则生成的隐藏帖子字段不存在。这就是我能够命名和提取为所有 4 个选项选择的分数的方式。

<section>
<label>Option 1:</label>
<div class="options" data-score-name="option1"></div>
</section>

<section>
<label>Option 2:</label>
<div class="options" data-score-name="option2"></div>
</section>

<section>
<label>Option 3:</label>
<div class="options" data-score-name="option3"></div>
</section>

<section>
<label>Option 4:</label>
<div class="options" data-score-name="option4"></div>
</section>


<script type="text/javascript">
$('.options').raty({
  half: true,
  width: 'width: 150',
  path: '/assets/img',
  starOff: 'star-off.png',
  starOn: 'star-on.png',
  starHalf: 'star-half.png',
  readOnly: false,
  scoreName: 'score[]',

  click: function(score)
  {
     var ScoreName = $(this).attr('data-score-name');
     $(this).append("<input type='hidden' name='rate[" + ScoreName + "]' value='" + score + "'>");
  }

});
</script>

我遇到的问题是,如果未选择每个选项,如何使每个选项具有默认值?我不确定是否有一个 onload 选项会给它一个默认值并且只能使用 onclick。

4

1 回答 1

0

想通了,就像一个魅力。可能是错误的做法,但它有效:)

<script type="text/javascript">
$('.options').raty({
  half: true,
  width: 'width: 150',
  path: '/assets/img',
  starOff: 'star-off.png',
  starOn: 'star-on.png',
  starHalf: 'star-half.png',
  readOnly: false,
  scoreName: 'score[]',
  score: function() {
    var ScoreName = $(this).attr('data-score-name');
    return $(this).append("<input type='hidden' name='rate[" + ScoreName + "]' class='" + ScoreName + "' value='0'>");
  },



  click: function(score)
  {
     var ScoreName = $(this).attr('data-score-name');
     $("." + ScoreName).val(score);
     //$(this).append("<input type='hidden' name='rate[" + ScoreName + "]' value='" + score + "'>");
  }

});
</script>
于 2014-04-13T20:21:29.557 回答