Jquery循环通过单选按钮&找到容器div的最低价格

时间:2014-11-07 06:18:12

标签: jquery

你能否使用Jquery找到最低价格,然后在周围添加一个类,然后更改' checked =" check"'适当的选择?

<div><input type="radio" name="RateID" value="1" checked="checked"/>UPS Ground - $10.91</div>
<div><input type="radio" name="RateID" value="2" />UPS 3 Day Select - $14.34</div>
<div><input type="radio" name="RateID" value="3" />UPS 2nd Day Air - $19.22</div>
<div><input type="radio" name="RateID" value="4" />UPS Next Day Air Saver - $36.19</div>
<div><input type="radio" name="RateID" value="5" />USPS Priority Mail - $6.35</div>

3 个答案:

答案 0 :(得分:3)

是的,你可以,像这样

$('[name="RateID"]').sort(function(a,b) {
    return $(a).closest('div').text().split('-').pop().replace(/[^\d.]/g, '' ) -
           $(b).closest('div').text().split('-').pop().replace(/[^\d.]/g, '' );
}).first()
  .prop('checked', true)
  .closest('div')
  .addClass('someClass');

FIDDLE

答案 1 :(得分:0)

中尝试以下代码
jQuery(document).ready(function()
{
values=Array();
jQuery('input[type="radio"]').each(function(){
test=jQuery(this).val();
values.push(test);
})

max = Math.max.apply(Math,values);
jQuery('input[value="'+max+'"]').attr('checked','true');
});

答案 2 :(得分:0)

尝试以下代码。它适用于您。

  jQuery(document).ready(function()
    {
        var minPrice = jQuery('input[type="radio"]:checked').closest('div').text().split('-').pop().replace(/[^\d.]/g, '' );
        var value;
        jQuery('input[type="radio"]').each(function(){
          var a = $(this).closest('div').text().split('-').pop().replace(/[^\d.]/g, '' );

          if(minPrice > parseFloat(a))
          {
            minPrice = a;
            value =  $(this).val();
          }
        })

        jQuery('input[value="'+value+'"]').attr('checked','true');
    });