Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “设置”;val";不工作(预选)_Javascript_Jquery_Jquery Select2 - Fatal编程技术网

Javascript “设置”;val";不工作(预选)

Javascript “设置”;val";不工作(预选),javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,我已经研究了SO和Git hub上的多个问题: 但我似乎仍然不明白为什么没有设定这些值 我使用的是jinja2模板,因此我将给出生成的html/js: <div class="form-group"> <label class="control-label col-sm-4" for="message_type">Meassage Type</label> <div class="col-sm-5"> &l

我已经研究了SO和Git hub上的多个问题:

但我似乎仍然不明白为什么没有设定这些值

我使用的是jinja2模板,因此我将给出生成的html/js:

<div class="form-group">
    <label class="control-label col-sm-4" for="message_type">Meassage Type</label>
    <div class="col-sm-5">
        <input type="hidden" name="message_type" id="message_type" readonly />
    </div>
</div>

我还成功地重现了结果,请参见。

出现问题的原因是您已将
multiple
属性设置为true。在本例中,要设置值,需要使用数组而不是字符串

例如:

$(function () {
    $("#message_type").select2({
        placeholder: "Email/SMS/PIMS Modal",
        multiple: true,
        width: "300px",
        tokenSeparators: [',', ' '],
        data: [{
            id: "email",
            text: "Email"
        }, {
            id: "pims modal",
            text: "PIMS Modal"
        }, {
            id: "sms",
            text: "SMS"
        }, ],
    });

    $("#message_type").select2("val", ["email"]);
});
这里有一个工作演示:


编辑:这里是一个使用4.0.1版本插件(使用插件的完整版本)的工作JSFIDLE

非常感谢<代码>:)这似乎在带有select2 4.0的ASP.net MVC中不起作用。0@JpHouten我为新版本的插件提供了第二个JSFIDLE,希望如此helps@TasosK. 谢谢你,谢谢你和这里的帮助:我找到了解决办法:)@TasosK。错误链接,应该是:
$(function () {
    $("#message_type").select2({
        placeholder: "Email/SMS/PIMS Modal",
        multiple: true,
        width: "300px",
        tokenSeparators: [',', ' '],
        data: [{
            id: "email",
            text: "Email"
        }, {
            id: "pims modal",
            text: "PIMS Modal"
        }, {
            id: "sms",
            text: "SMS"
        }, ],
    });

    $("#message_type").select2("val", ["email"]);
});