【问题标题】:Select2 pre selected seperated with comma from databaseSelect2 从数据库中预先选择,用逗号分隔
【发布时间】:2021-02-21 06:05:53
【问题描述】:

我正在尝试显示从数据库中获得的预选值,用逗号分隔,但无法这样做,目前我的代码在一个选择中运行良好,但对于多项选择,我不知道如何在值之间放置逗号。 让我们假设如果数据库中的数据是 (foo,moo),这是我正在使用的 jquery 的语法

$('.multi_select').select2().val(['<?php echo $categories; ?>']).trigger('change')

这个显示 (['foo,moo']) 我试图在 foo 之后加上单引号,然后在开始 moo 之前再加上单引号。所以结果显示应该是 (['foo','moo']) 我正在苦苦挣扎 2 天,但无法获得解决方案。非常感谢任何帮助。

【问题讨论】:

    标签: html jquery dropdown jquery-select2 option


    【解决方案1】:

    如果'&lt;?php echo $categories; ?&gt;' = 'foo,moo,...,..',比如你要拆分字符串:

    var d0 = ['<?php echo $categories; ?>'];
    var d1 = d0[0].split(",");
    $('.multi_select').select2().val(d1).trigger('change');
    

    var d0 = '<?php echo $categories; ?>';
    var d1 = d0.split(",");
    $('.multi_select').select2().val(d1).trigger('change');
    

    我不是 php 专家,可能这行得通:

    var d0 = '<?php echo $categories; ?>'.split(",");
    $('.multi_select').select2().val(d0).trigger('change');
    

    $('.multi_select').select2().val('<?php echo $categories; ?>'.split(",")).trigger('change');
    

    【讨论】:

    • 感谢您的建议,但我已经尝试了上述所有方法,但没有奏效。由于 , 已经在单元格中可用,我想要单引号 ' 在开始逗号之前。
    • 你确定内容是什么,'&lt;?php echo $categories; ?&gt;' 的值是多少?所以你把值困在d0 里?显示d0,你确定没有两次单引号吗?
    • 我不明白为什么不起作用,......要使用此功能,下拉列表中必须存在值..
    • 是 foo,moo,我希望它应该显示为 'foo','moo' 所以这是从下拉菜单中显示预选值的语法
    • 和d0的值?因为看起来你的 php 值不是字符串?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-31
    • 1970-01-01
    • 2013-03-06
    • 1970-01-01
    • 2014-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多