在jquery post之后设置fieldset单选按钮值

时间:2017-01-21 12:41:07

标签: javascript jquery html input radio-button

我有一个带有单选按钮的字段集,如下所示:

<fieldset class="rating" id="ratingSystem">
  <input type="radio" id="star5" name="rating" value="5" autocomplete="off" /><label class="full" for="star5" title="Awesome - 5 stars"></label>
  <input type="radio" id="star4" name="rating" value="4" autocomplete="off" /><label class="full" for="star4" title="Pretty good - 4 stars"></label>
  <input type="radio" id="star3" name="rating" value="3" autocomplete="off" /><label class="full" for="star3" title="Meh - 3 stars"></label>
  <input type="radio" id="star2" name="rating" value="2" autocomplete="off" /><label class="full" for="star2" title="Kinda bad - 2 stars"></label>
  <input type="radio" id="star1" name="rating" value="1" autocomplete="off" /><label class="full" for="star1" title="Sucks big time - 1 star"></label>
</fieldset>

我尝试的是在jquery帖子在完成函数中完成之后设置它的默认值,如下所示:

$(document).on("click", ".editAction", function (event) {

   $.post("/SearchCompetitor/GetCompetitor", { id: $(this).closest('tr').find('.idRow').attr('id') })
     .done(function (data) {
     $('#TextArea1').val(data.Comment);
     $('input[name=rating]:checked').val(data.Rating).attr('checked', true);

     event.preventDefault();
     var l = document.getElementById('popap');
     l.click();
   });
});

textarea值设置得很好,但是我无法通过数据对象中返回的值设置fieldset单选按钮的值。

data.Rating是数值,可以包含1-5的值;

这是不起作用的部分:

$('input[name=rating]:checked').val(data.Rating).attr('checked', true);

如何将单选按钮值设置为data.Rating ??

中返回的值

1 个答案:

答案 0 :(得分:1)

这样做了:

$("input[name='rating'][value='"+data.Rating + "']").attr('checked', 'checked');