Bootstrap select - 在点击时添加数据样式属性

时间:2015-03-08 00:49:28

标签: jquery css twitter-bootstrap twitter-bootstrap-3

我正在使用bootstrap,我正在寻找更改属性"数据风格"在我的选择框上,当它们对#34; data-style = btn-danger"无效时突出显示无效项目。

所以我想这样:

<select id="optionChoice" class="form-control select">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>

未选中时要更改为

<select id="optionChoice" class="form-control select data-style="btn-danger">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>

为此,我在单击提交按钮时使用了Jquery功能。它包括这一行:

 $('#optionChoice').attr('data-style', 'btn-danger');

但这并没有改变任何事情。如果我手动将该属性添加到选择框,它会正确显示,但我似乎无法动态添加它。我知道函数正在运行,因为我还在文本框中添加了一个类,如:

 $('#' + controltovalidate).addClass('error'); 

添加类并正确更改文本框的外观。但是这个错误类不能使用bootstrap select,所以我真的试图让这个数据样式属性工作。

我有什么想法可以动态添加这个属性吗?

2 个答案:

答案 0 :(得分:5)

显然,引导选择的呈现方式是您无法使用通常的.attr()调用动态添加类。

相反,你使用它:

$('#optionChoice').selectpicker('setStyle', 'btn-danger');

此处可以找到更多有需要的人:http://silviomoreto.github.io/bootstrap-select/

答案 1 :(得分:0)

<select id="optionChoice" class="form-control select" data-style="btn-danger">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>

we missed double quote in line closing class


<select id="optionChoice" class="form-control select data-style="btn-danger">