我已将剑道下拉列表转换为剑道多选。
下拉列表包含 2 个项目:
- D-UDMS-TMA 数据管理系统
- U-TDMS-SMA 管理系统
$("#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"]
.....
.....
}
Commented lines is for Dropdownlist.
输出应该类似于 var MPID:
(3)["D","UDMS","TMA Data Mgmt System"]
(3)["U","TDMS","SMA Mgmt System"]
最佳答案
您需要在多选上使用 dataItems
方法来获取底层选定的数据项。
所以您需要做的就是更改您的代码:
var MPID = $("#DDRolecode").data("kendoMultiSelect").value().split('-')
到:
var MPID = $("#DDRolecode").data("kendoMultiSelect").dataItems();
所以这将为您提供您选择的数据项数组。因此,如果您只需要 id,则可以将 value mapping
更改为 valuePrimitive:true
或将返回的 dataItems 映射到您需要的数组列表。
我已经包含了一个展示如何获得元素的道场:https://dojo.telerik.com/ILEvITUQ
这取自用于多选的 api 演示 dojo,但我更改了 Get Values
按钮以仅将项目映射到它们的值,并将 dataItems 数组字符串化。
关于javascript - 如何在剑道多选变量中获取选定的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57853286/