下拉选项不会显示在kendo网格弹出模板中

时间:2015-11-30 13:29:02

标签: kendo-ui kendo-grid kendo-asp.net-mvc

我尝试创建下载到kendo网格编辑弹出窗口tempate.but我无法获得弹出tempate.how的下拉值以使用kendo网格弹出窗口获取它?

kendo字段详细信息如下所述

{ field: "PaymentMode", title: "Payment Mode", width: 150, editor: paymentModeDropDownEditor, template: "#:AvailablePaymentMode#", hidden: true },

编辑事件代码写在下面

 edit: function (e) {

  var formTypeData = new kendo.data.DataSource({
                data: [
                    { Text: "Cheque", Value: "0" },
                    { Text: "Cash", Value: "1" },
                ]
            });
function paymentModeDropDownEditor(container, options) {
                $('<input required data-text-field="Text" id="paymentMode" data-value-field="Value" data-bind="value:PaymentMode"/>')
                    .appendTo(container)
                    .kendoDropDownList({
                        autoBind: true,
                        dataSource: formTypeData,
                        change: onChange,
                    });
            }

            function onChange(e) {
                var dataItem = this.dataItem(e.item);
                if (dataItem.Text == "Cash") {
                    $("input[name='ChequeReferenceNo']").hide();
                    $("label[for='ChequeReferenceNo']").hide();

                    $("input[name='BankName']").hide();
                    $("label[for='BankName']").hide();
                }
                else {
                    $("input[name='ChequeReferenceNo']").show();
                    $("label[for='ChequeReferenceNo']").show();

                    $("input[name='BankName']").show();
                    $("label[for='BankName']").show();
                }
            };

Kendo网格弹出模板脚本写在下面

<script id="InvoiceUpdatePopup_editor" type="text/x-kendo-template">

  <input name="paymentMode" data-bind="value:AvailablePaymentMode" data-value-field="value" data-text-field="text" data-role="dropdownlist" />

<script>

1 个答案:

答案 0 :(得分:0)

我知道它不是根据您的查询而是使用可编辑模板实现,如下所示:

网格 -

$soundtrack->setSlug("sw-ep-vii")

网格模型: -

Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("PopupEditView"))

PopupEditView-

 .Model(model =>
        {
            model.Id(p => p.ID);            
            model.Field(p => p.Role).DefaultValue(ViewData["defaultCategory"] as UserRole);
        }

控制器 -

 @(Html.Kendo().DropDownListFor(model => model.Role)
                    .DataValueField("Id")                                        
                    .DataTextField("RoleName")
                    .SelectedIndex(Model.Role.Id)                    
                    //.Value(Model.Role.RoleName)
                    //.Events(e => e.("onDataBound"))
                    .BindTo(ViewData["Category"] as IEnumerable<UserRole>)
                    .HtmlAttributes(new { style = "width: 280px;" })
        )

让我知道它对你有用。