我正在使用yii2中的select2小部件。我想删除特定的类,因为select2提供的示例是它需要一个模型来运行,我不知道如何处理这种方式。还因为我没有足够的时间来应用select2小部件在yii2中实现的方式。
因为我是yii2的新手而且我正在创建一个下拉搜索的方式,我真的想要选择2的工作方式。
HTML:
<span class="select2 select2-container select2-container--krajee select2-container--below select2-container--focus" dir="ltr"></span>
Jquery的:
$('span .select2').removeClass('select2-container--focus');
如何从span中删除此类select2-container--focus
?
或者是否有任何其他方法可以使用jquery删除该类。
答案 0 :(得分:2)
这正是您使用jQuery删除类的方法。但是,that class is being re-applied by Select2,所以每当你专注于它或与之相关的东西时,它都会重新应用这个类。
有很多方法可以使用javascript强制删除类,但是它们都不会完美地工作,并且可能会引入奇怪的行为或视觉伪像,如闪烁。代码解决方案的最可能的候选者是挂钩Select2.focus
事件,并希望您的事件处理程序在他们的事件之后触发。
假设您只是想阻止该类为元素设置样式,您可以使用自己的样式覆盖该类,或override the theme。
答案 1 :(得分:2)
span .select2
使用
$('span.select2').removeClass('select2-container--focus');
$('#remove').click(function() {
$('span.select2').removeClass('select2-container--focus');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="select2 select2-container select2-container--krajee select2-container--below select2-container--focus" dir="ltr">
Some thing in span
</span>
<button id="remove">removeClass</button>
&#13;