我正在使用劍道網格和編輯器模板來顯示我的數據。在編輯器中,我已將 id 指定給 DataValueField() 并將名稱指定給 kendo 下拉列表的 DataTextField() 。在更改事件中,我無法獲取 DataValueField()??聪旅娴拇a這是我的編輯器模板 MemoCarrier.chtml@using System.Collections@(Html.Kendo().DropDownList() .DataValueField("PARTNERID") .DataTextField("PARTNERNAME") .Name("AIRLINENAME") .BindTo((IEnumerable)ViewBag.lstAirline) .HtmlAttributes(new { maxlength = "", @class = "MNum" }) .OptionLabel("-Select-Flight ") .Filter(FilterType.Contains) .Events(e => { e.Change("MemoCarrier"); }))這是我的更改功能function MemoCarrier(e) { var AirlineName = this.value(); alert(AirlineName) //it displays PARTNERNAME instead of PARTNERID}目前我正在獲取 name ie;DataTextField() 值。相反,我需要 DataValueField()。提前感謝您的建議!
1 回答

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
因此,根據您的評論,最簡單的方法可能是使用該data-bind屬性來簡化綁定模型的過程。假設您也在網格中使用 MVC 助手。
因此,獲取您的代碼并添加以下內容:
@(Html.Kendo().DropDownList()
.DataValueField("PARTNERID")
.DataTextField("PARTNERNAME")
.Name("AIRLINENAME")
.BindTo((IEnumerable)ViewBag.lstAirline)
.HtmlAttributes(new { maxlength = "", @class = "MNum", data_bind="value:{yourProperyNameHere}" })
.OptionLabel("-Select-Flight ")
.Filter(FilterType.Contains)
)
所以希望您能看到我所做的只是HtmlAttribute為您向控件添加一個新屬性。您需要做的就是輸入任何屬性作為其值。
根據該值是復雜 ( object) 還是簡單 ( string, int etc) 基本類型,您可能需要將該Primitive屬性設置為true,以便僅將值字段(例如您分配的 id)綁定回網格的行模型。
- 1 回答
- 0 關注
- 115 瀏覽
添加回答
舉報
0/150
提交
取消