当前位置: 首页 > 知识库问答 >
问题:

如何在剑道UI MVC中选择DropDownlist值和文本

巴学潞
2023-03-14

我有剑道下拉列表,我想选择下拉列表的选择值。我得到了选定项目的文本,但不是应该是ID的值。

function onSelect(e) {
        var item = e.item;
        var v = e.value;
        var text = item.text();
        alert(text);
        alert(v);
    };

绑定数据与Dropdown列表剑道

$("#FirstName").kendoDropDownList({
        dataTextField: "Fname",
        dataValueField: "Id",
        dataSource: dataSoucceAll,
    });

使用剑道下拉列表绑定选择函数

    var dropdownlist = $("#FirstName").data("kendoDropDownList");
    dropdownlist.bind("select", onSelect);

共有3个答案

衡建中
2023-03-14

在select事件中,您可以获取所选项目的基础数据项:

   var dataitem = e.sender.dataItem(e.item);
   alert(dataitem.Id);

在您的情况下,值是dataItem。ID.

演示

姜鸿
2023-03-14

就我个人而言,我喜欢用funcionallity封装代码。因此,我更喜欢这种方法:

$("#FirstName").kendoDropDownList({
    dataTextField: "Fname",
    dataValueField: "Id",
    dataSource: dataSoucceAll,
    /* Event select */
    select: function (e) {
       var item = e.item;    // item has selected value
       /* logic here*/
    }
});

检查Telerik的文档这里和这里

仉梓
2023-03-14

谢谢大家。我也有一些解决办法。

  function onSelect(e) {
       //selecting ID from the dropdown list
        var dataItem = this.dataItem(e.item.index());
        var BId = dataItem.Id;


        //Binding with the grid.
        var alg = $("#allgrid").data("kendoGrid").dataSource;

        //Filtering gird with the Id
        if (BId) {
            alg.filter([
                 {
                    "logic": "eq",
                    "filters": [
                        {
                            "field": "Id",
                            "operator": "eq",
                            "value": BId
                        }
                    ]
                }
            ])
        }
        else {
            alg.filter({});
        } 
    };

    //Binding dropdownlist with database
    $("#FirstName").kendoDropDownList({
        dataTextField: "Fname",
        dataValueField: "Id",
        dataSource: dataSoucceAll,
    });

    //Bind Select function with kendo Dropdown list
    var dropdownlist = $("#FirstName").data("kendoDropDownList");
    dropdownlist.bind("select", onSelect);
 类似资料:
  • 我有一个可编辑的剑道网格,有一个字段是一个下拉列表。我有一个和字段需要在该列中使用。名称显然会显示,而ID应该是用于绑定的。我已经在下面的示例中删除了我的数据源URL,但是DropDownList数据显示良好,包含名称和ID值列表。 我已经看了一段时间了,所以我可能错过了一些明显的东西。我对这个问题有一个相同的问题(下拉列表不绑定到该行中显示的用户,直到我单击下拉列表来展开它),但是我认为我的模型

  • 如何在更改函数上选择剑道下拉列表值。剑道下拉列表在网格中。在更改函数中,我想选择列表中的第一项。 我已经编写了代码: 但是下拉列表没有选择更改功能。我该怎么做请帮帮我。

  • 我不认为实现这样一个常见的简单场景有那么难,但我有一个剑道下拉列表,它使用MVVM风格进行初始化,它绑定了一个远程数据源。 我想要实现的是,一旦远程数据源准备好并绑定到小部件,默认情况下会选择第一个选项(当然,第一个项目的值应该绑定到视图模型) 我试图直接使用上面的代码来做这件事,它将一个dataBound事件绑定到小部件,并在它触发时选择第一个项目。回调方法被调用时没有错误,但是小部件从不选择第

  • 我试图使用一对剑道下拉列表来过滤AngularJS中的数据集。其中一个数据源使用静态可观察数组按状态筛选数据集;另一个数据源是数据集的“区域ID”列的一组不同值,也存储为可观察数组。当状态下拉列表更改时,区域下拉列表应该从新过滤的数据中重新加载区域列表。这是可行的,但是选定的值最终会被忽略,即使应该代表选定值的模型仍然具有正确的值,并且数据仍然被相同的值正确过滤。打开下拉列表,然后单击它,使其按应

  • 我们有一个带有下拉列表和Telerik Kendo UI控件的表单(以及Telerik网格)。 当用户从下拉列表中进行选择时,将向MVC控制器动作发出一个ajax调用,该动作将发回更多数据,这些数据将部分填写表单。其中一个字段用Kendo UI NumericTextBox表示。 要求是在数据返回时在此NumericTextbox上设置输入焦点。 然而,这似乎在我尝试的任何场景中都不起作用。 下面

  • 我使用剑道网格和编辑器模板来显示我的数据。在编辑器中,我给了剑道下拉列表的DataValueField()id和DataTextField()名称。在更改事件中,我无法获取DataValueField()。请参阅下面的代码 这是我的编辑模板。chtml 这是我的更改功能 目前我的名字是ie;DataTextField()值。相反,我需要DataValueField()。提前感谢您的建议!