【问题标题】:How do I use select2 object events stored in an array?如何使用存储在数组中的 select2 对象事件?
【发布时间】:2017-01-19 12:03:47
【问题描述】:

我正在尝试破解一些 Opentext 表单,并在下面创建了包含我的 select2 对象的数组。如何使用已触发事件的对象的数组索引?或者有更好的方法吗?

joblink 变量是一个隐藏元素,存储一个由 opentext 读写的值

for(var b = 0; b <= 15; b++){

            JobSelect[b] = $('#Job' + (b + 1) + 'Trans').select2({ width: '100%', Height: '100%' }).on('change', function(e){

                $(joblink[b]).val(this.value);

            });

            if ($(joblink[b]).val() != '')
            {
                $(JobSelect[b]).val($(joblink[b]).val()).trigger("change");
            }   
        }

【问题讨论】:

    标签: javascript jquery events select2 opentext


    【解决方案1】:

    这是我建议的解决方案的 jsFiddle 链接: https://jsfiddle.net/bindrid/ujna54an/3/

    cmets 是内联的:

        for (var b = 0; b <= 15; b++) {
    
            // in your event handler, add a second parameter
            JobSelect[b] = $('#Job' + (b + 1) + 'Trans').select2({ width: '100%', Height: '100%' }).on('change', function (e, eData) {
                // puts the selected value in the job link
    
                // and put the variable here
                $(joblink[eData]).val(this.value);
    
            });
    
            //If not blank,  makes what ever in job link the selected value so it will put the value back in the job link
            // seems circular.
            if ($(joblink[b]).val() != '') {
    
                // add b as second parameter 
                $(JobSelect[b]).val($(joblink[b]).val()).trigger("change", b);
            }
        }
    

    但是,如果您的唯一目的是将选择同步到链接,只需用此替换上面的代码

        // set up all selects 
        $('select').select2({ width: '100%', Height: '100%' });
    
        $.each(joblink, function (idx, item) {
            var link = $(item).val();
    
            if (link.length > 0) {
                $('#Job' + (idx + 1) + 'Trans').val(link).trigger('change');
    
            }
        })
    

    【讨论】:

      猜你喜欢
      • 2018-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-03
      • 2016-05-21
      • 2016-12-09
      相关资源
      最近更新 更多