尝试动态设置单选按钮。
这是HTML
<div class="field-block button-height" name="payment_types" id="payment-types">
<label class="label"><b>Payment Methods</b></label>
<div name="payment-type-cc" id="payment-type-cc">
<input type="radio" name="paymentMethod" id="payment-method-cc" value="paypal" class="radio">
<label for="payment-method-paypal">Pay with your Credit Card</label>
</div>
<div name="payment-type-skip" id="payment-type-skip">
<input type="radio" name="paymentMethod" id="payment-method-skip" value="skip" class="radio">
<label for="payment-method-skip">Skip payments for now. Register only.</label>
</div>
</div>
这是我的jquery线......
alert($('input:radio[name=paymentMethod]#payment-method-cc').val());
$('input:radio[name=paymentMethod]#payment-method-cc').prop('checked',true);
警报返回“跳过”,所以我知道我有正确的对象。但道具没有设置单选按钮。
答案 0 :(得分:2)
解决了这个问题。
我正在使用主题,主题添加了额外的UI元素。 我只是在道具调用之后添加了第二行,它运行得很好。 $( 'MyObj中')丙( '检查',真); $( 'MyObj中')父母( '跨度')addClass( '检查');
对于任何可能使用来自themeforest的 developr主题的人来说,重要的是要注意这一点。失败的prop('checked',true)实现的效果是复选框确实设置但显示的UI对象不显示已检查。
在代码检查完对象后右键单击该对象并检查UI元素(Firefox)。您将看到添加的所有其他标签。在我的情况下,标签上方有一个跨度,我可以看到检查复选框时检查的类值是否存在,当对象未检查时不存在。
因此,在我的代码中,在I $('obj')之后.prop('checked',true);然后我添加代码,$('myobj')。parents('span')。addClass('checked');从主题中实现显示复选框。
答案 1 :(得分:0)
<div class="field-block button-height" name="payment_types" id="payment-types">
<label class="label"><b>Payment Methods</b></label>
<div name="payment-type-cc" id="payment-type-cc">
<input type="radio" name="paymentMethod" id="payment-method-cc" value="paypal" class="radio" />
<label for="payment-method-paypal">Pay with your Credit Card</label>
</div>
<div name="payment-type-skip" id="payment-type-skip">
<input type="radio" name="paymentMethod" id="payment-method-skip" value="skip" class="radio" />
<label for="payment-method-skip">Skip payments for now. Register only.</label>
</div>
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
//<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
//works with 1.8.2 and 1.10.1
<script>
$(function(){
$("#payment-method-cc").attr('checked', 'checked');
});
</script>