javascript - 点击事件中无法正确获取选中的radio

标签 javascript jquery jquery-events

页面代码如下:

<input type="radio" class="direct" name="r1" value="first" />
    <span class="proxy">radio1</span>
<input type="radio" class="direct" name="r1" value="second" />
    <span class="proxy">radio2</span>

js代码如下:

$('.direct').click(function(e) {
    var obj = $(this).parent(),
        value = obj.find('input:checked').val();
    if(value){
        alert('you click ' + value + ' button');
    }else{
        alert('you did not click a button');
    }
});
$('.proxy').click(function(e) {
    $(this).prev().click();
});​

这是example on JSFiddle

我的问题是:
为什么单击跨度文本不像直接单击单选按钮那样有效?

最佳答案

正如我之前所说,问题不清楚,至少对我来说是这样。但是,如果您想在单击下一个跨度时检查 radio ,您可以这样做:

$('.proxy').click(function(e) {
    $(this).prev().attr('checked', true)
});​

关于javascript - 点击事件中无法正确获取选中的radio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12585052/

相关文章:

javascript - AudioBufferSourceNode 连接后才开始播放

javascript - 类上的 IE11 JavaScript 语法错误,使用 Webpack 构建

javascript - 如何使用 jQuery 选择的插件重置表单?

javascript - 带有 Browserify/Shim CDN jQuery 的光滑轮播

javascript - js 将属性添加到 url param 对象

javascript - jQuery 按键事件等待 0.5 秒等待另一个用户按键

javascript - 多个 .ready() 函数绑定(bind)错误

javascript - 等到所有ajax请求都完成

javascript - 如何将 jQuery ui 自动完成添加到动态内容?

javascript - 这个 jQuery 函数是什么意思?