jQuery级联下拉菜单,如果返回1个结果,则设置所选项目

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

我在页面上有许多级联的jQuery下拉菜单。我通过每个控制器的change事件中的控制器中的mvc action动作填充它们。

一切正常,但是,如果下拉列表仅返回一行(请参见图片)。用户希望默认情况下将其选中,而不必自己选择。否则,他们希望默认选择它,而必须从更大的列表中选择它。“在此处输入图像描述”

这里是我的Jquery,我想当我遍历结果函数时,我可以检查它是否有一行,是否将其设置为选定的值。但是我的脚本很糟糕,我厌倦的一切都没有用。任何帮助,将不胜感激。

    $("#ddlAddProject").change(function () {
    var projectId = $(this).val();
    $.getJSON("../Home/LoadSubprojectsByProjectId", { projectId: projectId
    },
           function (marksData) {
               var select = $("#ddlAddSubProject");
               select.empty();
               select.append($('<option/>', {
                   value: 0,
                       text: "Choose..."
               }
               ));

               $.each(marksData, function (index, itemData) {
                   select.append($('<option/>', {
                           value: itemData.Value,
                           text: itemData.Text
                   }));


           });

});

jquery asp.net-mvc cascadingdropdown
2个回答
0
投票

如果只有一个,则将所选属性设置为true。

if (marksData.length===1) {
    //select.find("option:last").prop("selected",true);
    select.find("option").last().prop("selected",true);
}

-1
投票

我正在研究类似的东西,除了他们希望有一个文本框,他们可以输入包含第一个下拉选择的代码,而其余代码包含级联的下拉选择的值。。他们不想一直保持单击下拉列表。第二个下拉列表可以包含多个项目。有什么想法吗?

例如,下拉菜单1是国家/地区,下拉菜单2是国家/地区因此代码将是us-ca

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