【问题标题】:Bootstrap radio buttons引导单选按钮
【发布时间】:2014-07-24 03:49:22
【问题描述】:

我在同一页面上有 3 组不同的单选按钮。我遇到的问题是,当按下另一个 btn 组中的按钮时,它将切换上一个或下一个 btn 组中按钮的状态。他们似乎并不独立。代码如下:

 <div id="file1" class="btn-group" data-toggle="buttons-radio" >
    <button class="btn btn-primary" type="radio" name="radioGroup2" value="yes">Yes</button>
    <button class="btn btn-danger" type="radio"  name="radioGroup2"onClick="$('#mandatory1').val('no');">No</button>
</div>

 <div id="file2" class="btn-group" data-toggle="buttons-radio" >
    <button class="btn btn-primary" type="radio" name="radioGroup" value="yes">Yes</button>
    <button class="btn btn-danger" type="radio"  name="radioGroup" onClick="$('#mandatory2').val('no');">No</button>
</div>

当点击 div file1 中的按钮时,它会切换 div id file2 中按钮的状态

我已经尝试过使用 button.js,但没有成功。 我尝试了各种不同的 data-toggle="button"

有什么想法吗?

【问题讨论】:

  • 很好看。但它仍然没有解决问题。我已经更新了上面的代码。
  • 实际上是您为引导无线电创建的整个 HTML 是错误的。
  • 发布一个问题。与 boostrap 的文档相比,您根本没有使用相同的布局

标签: html twitter-bootstrap button radio-button


【解决方案1】:

Demo

引导单选按钮的 HTML 结构错误。

<div id="file1" class="btn-group" data-toggle="buttons" >
    <label class="btn btn-primary">
        <input type="radio" name="option1" /> Yes
    </label>
    <label class="btn btn-danger">
        <input type="radio" name="option1" /> No
    </label>
</div>


<div id="file2" class="btn-group" data-toggle="buttons" >
    <label class="btn btn-primary">
        <input type="radio" name="option2" /> Yes
    </label>
    <label class="btn btn-danger">
        <input type="radio" name="option2" /> No
    </label>  
</div>

旁白:

你正在使用 jQuery;请不要在您的 HTML 中使用onClick。您可以像这样设置这些事件(尽管有一种方法需要更少的代码)。

$(function(){ 
    $('.btn').button(); // this is for the radio buttons.

    // this replaces your inline JS
    $('#file1 .btn-danger').on('click', function(){
        $('#mandatory1').val('no');
    });
    $('#file2 .btn-danger').on('click', function(){
        $('#mandatory2').val('no');
    });
});

Demo

【讨论】:

    【解决方案2】:

    这应该可以解决您的问题:

    <div id="file1" class="btn-group" data-toggle="buttons">
        <label class="btn btn-primary active"><input type="radio" name="radioGroup2" value="yes">Yes</label>
        <label class="btn btn-danger"><input type="radio" name="radioGroup2" onclick="$('#mandatory1').val('no');">No</label>
    </div>
    
     <div id="file2" class="btn-group" data-toggle="buttons">
        <label class="btn btn-primary"><input type="radio" name="radioGroup" value="yes">Yes</label>
        <label class="btn btn-danger active"><input type="radio" name="radioGroup" onclick="$('#mandatory2').val('no');">No</label>
    </div>
    

    【讨论】:

    • 我总是在发布之前进行测试,但有时你可能会有另一个代码可能会崩溃
    猜你喜欢
    • 2021-01-16
    • 1970-01-01
    • 2013-10-06
    • 2013-01-01
    • 1970-01-01
    • 2018-03-05
    • 2016-01-02
    • 2014-05-25
    • 2015-07-09
    相关资源
    最近更新 更多