jquery - 选择框单击功能不再检测到 Bootstrap

标签 jquery html css twitter-bootstrap

因此,我正在使用 Bootstrap 选择,但是,当我在 class="selectpicker" 中添加时,任何非多选框都会失去检测点击功能的能力。

我有这个功能:

$("select").click(function()
{
    if (this.id.match(/rest/g))
    {
        return;
    }
    name = this.id;
    console.log(name);

    select_id = name.replace("_free", "");
    radio = select_id + '_radio';
    //$('input:radio[name='+radio+']:checked').prop('checked', false).checkboxradio("refresh");
    document.getElementById(select_id + "_radio3").checked = true;
}

它所做的是确定单击了哪个选择,然后更改选中的单选按钮。但是,加入selectpicker后,只有multiple的还是会改变radio button。

知道如何解决这个问题吗?

https://jsfiddle.net/34ksL2h5/3/

(删除 class="selectpicker",您会看到问题)

最佳答案

<div>
  <input id="select1_radio" type="radio" name="radio1">
  <select id="select1" class="selectpicker">
    <option>some option 1</option>
    <option>some option 2</option>
    <option>some option 3</option>
  </select>
</div>
<div>
  <input id="select2_radio" type="radio" name="radio1">
  <select id="select2" class="selectpicker">
    <option>some option 1</option>
    <option>some option 2</option>
    <option>some option 3</option>
  </select>
</div>

脚本。抱歉,它是原生 JS,因为我不知道如何使用 jQuery。希望有人为您翻译。

var sel = document.querySelectorAll('.bootstrap-select');

[].forEach.call(sel, function(elem){
    elem.onclick = function(){
    this.previousElementSibling.checked = true;
  }
});

// $(".selectpicker").selectpicker();

工作 fiddle :https://jsfiddle.net/34ksL2h5/10/

触发器是 .bootstrap-select。希望对您有所帮助!

关于jquery - 选择框单击功能不再检测到 Bootstrap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39970291/

相关文章:

javascript - 为什么对齐元素不沿交叉轴居中?

jquery - 如何在输入字母时向右移动一个 div(如输入插入符号)?

jquery - FooTable 与 ReactJS (如何从 ReactJS 组件调用 jQuery 插件?)

html - 翻转图像悬停

javascript - 应用程序范围内可访问和可变的变量

javascript - 从外部进入集合中的控件时如何淡入和淡出标签?

jquery 向下滚动时动画回到原始位置(?)

javascript - javascript marquee 中的间距元素,使用 php 循环元素

html - Perl 正则表达式从嵌套的 html 标签中提取值

html - 在 html css 中设置样式的大引号