使用jQuery触发单选按钮onclick事件

时间:2018-08-31 04:45:01

标签: javascript jquery

我有一个代码,可以使用.prop()方法选择单选按钮。问题是我在单选按钮上也有 onclick事件,是否有任何变通办法可以使它也使用jQuery触发onclick事件

jQuery代码

/**
 * Select shipping method when selected from the list
 */
$(document).ready(function() {
    var $options = $('.shipping-method .item');

    $options.click(function(e) {
        var $current = $(this);
        e.preventDefault()
        e.stopPropagation()
        $options.removeClass('on')
        $current.addClass('on')
        $('input', $current).prop('checked', true)
    })
})

HTML代码

<li>
    <div class="item"><a href="javascript:;" class="shipping_3">Home Delivery</a>
        <input name="shipping" type="radio" class="radio" id="shipping_3" value="3" checked="checked" supportcod="1" insure="0" onclick="selectShipping(this)">
    </div>
</li>

2 个答案:

答案 0 :(得分:0)

您在这里找到解决方法

$ current.prop('checked',true).trigger(“ click”);

$(document).ready(function() {
  var $options = $('.shipping-method .item');

  $options.click(function(e) {
    var $current = $(this);
    e.preventDefault()
    e.stopPropagation()
    $options.removeClass('on')
    $current.addClass('on')
    $current.prop('checked', true).trigger("click");
  });
});

答案 1 :(得分:0)

我的建议是先使用单独的事件侦听器删除onclick属性。
请参阅jQuery.click() vs onClick
删除行:

e.preventDefault()