首页 > 解决方案 > 检索在单独文件中声明的选择对象

问题描述

在页面selectize初始化的某个点上。

     somewhere in file 1
     $(document).ready(function () {

        $tagSelectize = $('.assign-tags').selectize({
            plugins: ['remove_button'],
            valueField: 'original_name',
            labelField: 'name',
            ...all options not relative to the topic
        });
    });

我需要在代码的另一部分添加选项,我这样做:

file 2
<script type="text/javascript">

    $(document).ready(function () {

        var tso1 = $('.assign-tags').selectize;
        var tso = tso1[0].selectize;
        tso.addOption({value:100, text: 'BBBBB'});
        tso.refreshOptions();
        tso.addItem(100);

    });


</script>

但这完全重写了以前的实例并替换为新实例。如何检索selectize文件 1 中的inited

标签: javascriptselectize.js

解决方案


我认为在文件 2 上你应该改变

var tso1 = $('.assign-tags').selectize;
var tso = tso1[0].selectize;

var tso = $('.assign-tags')[0].selectize;

因为你说的是

取数组 的第一个元素,$('.assign-tags').selectize然后取它的“selectize”属性

但我认为你的意思是

取第一个$('.assign-tags')元素(即$('.assign-tags')[0])并从中取“selectize”属性

所以文件 2 应该变成如下代码

<script type="text/javascript">
$(document).ready(function () {
    var tso1 = $('.assign-tags')[0];
    var tso = tso1.selectize;
    tso.addOption({value:100, text: 'BBBBB'});
    tso.refreshOptions();
    tso.addItem(100);
});


推荐阅读