JQuery Select2 下拉列表无法在 MVC 中设置文本

问题描述 投票:0回答:1

我正在使用 select2 jquery 插件。我无法将文本设置/分配给选择控件。我使用带有触发功能的 select2 来设置值。首先,我采取的控制是 MVC 中的辅助类下拉菜单@Html.DropDownList。我收到类似无法读取未定义的属性(读取“文本”)之类的错误。我的代码如下:

索引.cshtml:

@Html.DropDownList("ddl", ViewBag.classFieldList as SelectList, "Select class", new { @id = "ddl", @class = "form-control", @name = "ddl", @onchange = "Checkclassvalu(this)" })

<Script>
$(document).ready(function () {

$('#ddl').select2({
           // closeOnSelect: false,
 });


var ddlclassvalue = 'seventh';

alert('class is : ' + ddlclassvalue);
var optionValue = $("#ddl option:contains('" + ddlclassvalue + "')").val();
$("#ddl").select2("val", optionValue).trigger('change');

});
</script>

我得到的错误是: 无法读取未定义的属性(读取“文本”)

Error Image

javascript jquery asp.net-core-mvc jquery-select2
1个回答
0
投票

无法设置/分配文本到选择控件

这是我从select2 webiste找到的。

$('#mySelect2').val('1'); // Select the option with a value of '1'
$('#mySelect2').trigger('change'); // Notify any JS components that the value changed

enter image description here

它在我这边的 ASP.NET Core MVC 应用程序中工作。就像您在下面的代码和屏幕截图中看到的那样,默认情况下选择了location2,并使用代码使其选择location3

@Html.DropDownList("ddl", ViewBag.classFieldList as SelectList, "Select class", new { @id = "ddl", @class = "form-control", @name = "ddl" })

@section Scripts{
    <script>
        $(document).ready(function () {

            $('#ddl').select2({
                // closeOnSelect: false,
            });

            var ddlclassvalue = 'localtion3';
            var optionValue = $("#ddl option:contains('" + ddlclassvalue + "')").val();
            alert(optionValue);
            $("#ddl").val(optionValue);
            $('#ddl').trigger('change');
        });
    </script>
}

enter image description here enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.