加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 以编程方式触发选择事件

发布时间:2020-12-16 00:06:46 所属栏目:百科 来源:网络整理
导读:我有一个kendoUI下拉列表定义如下: @(Html.Kendo().DropDownList() .Name("EditGroupSelector") .BindTo(Model.Groups) .Events( events = events .Select("onEditGroupSelected") ) ) 我知道当我调用api时,select事件不会被触发,如下所示: editGroupSelec
我有一个kendoUI下拉列表定义如下:

@(Html.Kendo().DropDownList()
                  .Name("EditGroupSelector")
                  .BindTo(Model.Groups)
                   .Events(
                    events => events
                        .Select("onEditGroupSelected")
                   )
            )

我知道当我调用api时,select事件不会被触发,如下所示:

editGroupSelector.select(0);

手动选择第一项后,我想手动触发选择事件:

editGroupSelector.trigger("select");//api calls dont trigger events -> trigger it manually

这会调用事件,但在事件处理程序中,我没有事件,因此无法获取新选择的值:

function onEditGroupSelected(e) {
    var nameOfGroup = e.item.text();//e.item does not exist when triggered manually
}

我如何触发事件,以便我可以在我的事件处理程序中实际使用“e.item”?

解决方法

jQuery trigger函数有一个可选参数作为参数.您需要手动添加它,使其与自动调用兼容.你应该添加(至少)项目.

例:

如果dropDownList的id是下拉列表,则可以创建如下参数:

dropDownList.select(3);
dropDownList.trigger("select",{ item: $("li.k-state-selected",$("#dropdownlist-list")) }
);

注意:非常重要的是要注意列表装饰器(open dropDownList)不是由您定义的ID(例如dropdownlist)标识,而是id后跟-list(Ex:dropdownlist-list).这就是为什么jQuery选择器是$(“li.k-state-selected”,$(“#dropdownlist-list”)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读