jquery单击单选按钮单击另一个

时间:2017-02-12 10:43:27

标签: jquery

我遇到了一些代码问题。如果单击一个单元格,我在每个单元格中都有一个带有多个单选按钮选项的表格然后查找相反的单元格,然后单击该组。

一切都运行良好,除非我点击集合中的第一个,它没有点击相反的那个。

我已经在JSFiddle中设置了代码,非常感谢任何帮助。

https://jsfiddle.net/mikeu/yx89h5nn/

    private void connect(int position, final String name) {
    Toast.makeText(this,"connecting "+name,Toast.LENGTH_LONG).show();
    final WifiP2pDevice device=peers.get(position);
    WifiP2pConfig config = new WifiP2pConfig();
    config.deviceAddress = device.deviceAddress;
    mManager.connect(mChannel, config, new WifiP2pManager.ActionListener() {

        @Override
        public void onSuccess() {
            Toast.makeText(getBaseContext(),"connected to "+ device.deviceName,Toast.LENGTH_LONG).show();
            isConnected=1;
            mDiscover.setText("disconnect");
            //success logic
        }

        @Override
        public void onFailure(int reason) {
            Toast.makeText(getBaseContext(),"Error :"+ reason,Toast.LENGTH_LONG).show();
            //failure logic
        }
    });
}

2 个答案:

答案 0 :(得分:1)

您需要测试:checked单选按钮值。所以条件应该是

if($('*[name="' + opposite + '"]:checked').val() != $(this).val())

此外,您应该设置click()属性。

,而不是执行checked

完整代码

$('input:radio').change(function() {
    var opposite = $(this).closest('div').data("opposite-name");
    if ($('*[name="' + opposite + '"]:checked').val() != $(this).val()) {
        $('*[name="' + opposite + '"][value="' + $(this).val() + '"]').prop('checked', true);
    }
});

Updated Fiddle

答案 1 :(得分:0)

这部分应该做什么?

if ($('*[name="' + opposite + '"]').val() != $(this).val())

删除此代码可以正常工作。