admin管理员组文章数量:1404937
Im trying to unbind keypress when select2 is focus, this seems to work
$('#someId').on('select2-focus',function(){
$(document).unbind('keypress');
});
but i want to get all select2 instance, i have tried
$('.select2').on('select2-focus',function(){
$(document).unbind('keypress');
});
but it is not working, i dont want to add ".custom_class" in each select2 i have in my page. can someone help me on this one? Thanks in advance.
Im trying to unbind keypress when select2 is focus, this seems to work
$('#someId').on('select2-focus',function(){
$(document).unbind('keypress');
});
but i want to get all select2 instance, i have tried
$('.select2').on('select2-focus',function(){
$(document).unbind('keypress');
});
but it is not working, i dont want to add ".custom_class" in each select2 i have in my page. can someone help me on this one? Thanks in advance.
Share Improve this question edited Dec 10, 2015 at 2:48 RobG 148k32 gold badges179 silver badges214 bronze badges asked Dec 10, 2015 at 2:19 jay tempjay temp 1,20312 silver badges11 bronze badges3 Answers
Reset to default 6In case anyone was still interested in the answer for the original question, i.e., „Getting all select2 instance in DOM“:
// The $element can be a narrower scope, or the entire document.
$element = $(document);
$element.find('select').each(function (i, select) {
var $select = $(select);
// Make sure that the select has Select2.
if($select.hasClass("select2-hidden-accessible")) {
// Perform your action, e.g.:
$select.on('select2-focus',function(){
$(document).unbind('keypress');
});
// You can also use the console for debugging:
// console.log($select);
}
});
The $select.hasClass("select2-hidden-accessible")
check is taken from the original docs: https://select2/programmatic-control/methods#checking-if-the-plugin-is-initialized
But notice, that the 'select2-focus' event might not exist anymore, as it is not listed here: https://select2/programmatic-control/events . You should be able to use
$select.find('.select2-selection__rendered').on('focus', function ...)
, but I did not test that.
For a working example of how this can be used, see my jsfiddle for a Select2 issue. Notice the function unobscurePlaceholdersOfSelect2()
.
jQuery('.select2-container').each(function(i,el){
$(el).data('select2').close()
})
I don't know what's your html.
but try it?
jQuery( "[attribute='value']" )
for example:
$("input[type='text']")
本文标签: javascriptGetting all select2 instance in DOMStack Overflow
版权声明:本文标题:javascript - Getting all select2 instance in DOM - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744868784a2629501.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论