首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Kendo多选择变量中选择选定的文本?

如何在Kendo多选择变量中选择选定的文本?
EN

Stack Overflow用户
提问于 2019-09-09 11:39:19
回答 3查看 3.2K关注 0票数 1

我已经将kendo下拉列表转换为kendo多重选择。

Dropdownlist列表包含两个项目:

  1. D TMA数据管理系统
  2. System SMA Mgmt系统
代码语言:javascript
运行
复制
$("#btnSendFlow").click(function () {

            debugger;

            var FlowData_array = [];

            //var ROLECODE = $("#DDRolecode").val().trim();---For dropdownlist output: "D"
            var ROLECODE = $("#DDRolecode").data("kendoMultiSelect").value();//added by chetan for multiselect output: "D" "U"

            // var MPID = $("#DDRolecode").data("kendoDropDownList").text().split('-');---for dropdownlist output: (3)["D","UDMS","TMA Data Mgmt System"]
            var MPID = $("#DDRolecode").data("kendoMultiSelect").value().split('-');//added for multiselect(How to do For multiple selected items?)-->
            output should be like:
            (3)["D","UDMS","TMA Data Mgmt System"]
            (3)["U","TDMS","SMA Mgmt System"]



        .....
        .....
        }
代码语言:javascript
运行
复制
Commented lines is for Dropdownlist.

输出应该与var MPID类似:

代码语言:javascript
运行
复制
(3)["D","UDMS","TMA Data Mgmt System"]
(3)["U","TDMS","SMA Mgmt System"]
EN

回答 3

Stack Overflow用户

发布于 2019-09-09 12:08:34

您需要在multiselect上使用dataItems方法来获取所选的底层dataItems。

因此,您所需要做的就是将代码更改为:

代码语言:javascript
运行
复制
var MPID = $("#DDRolecode").data("kendoMultiSelect").value().split('-') 

至:

代码语言:javascript
运行
复制
var MPID = $("#DDRolecode").data("kendoMultiSelect").dataItems(); 

因此,这将为您提供一个已选择的dataItems数组。因此,如果您只需要拥有id,那么要么将value mapping更改为valuePrimitive:true,要么将返回的dataItems映射到所需的数组列表。

我已经包含了一个dojo,展示了如何获得这些项目:https://dojo.telerik.com/ILEvITUQ

这是从用于多选择的api中获取的,但是我已经更改了Get Values按钮,以将这些项映射到它们的值,并对dataItems数组进行字符串化。

票数 3
EN

Stack Overflow用户

发布于 2019-09-09 12:49:47

你可以这样做:

代码语言:javascript
运行
复制
var selectedValues = $("#DDRolecode").data("kendoMultiSelect").value().map(item => item.split("-"));

其结果将是:

演示

票数 2
EN

Stack Overflow用户

发布于 2019-09-10 05:37:35

下面的代码适用于我:

代码语言:javascript
运行
复制
var control = $("#DDRolecode").data("kendoMultiSelect");
            var selectedDataItems = control.dataItems();

            //// create an array that only contains the selected ids
            var MPID = [];
            $(selectedDataItems).each(function () {
                MPID.push(this.Name.split('-')); // you can access any property on your model here
            });
            console.log(MPID);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57853286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档