0

我正在尝试将不同的模板传递给 Telerik Grid,具体取决于是否按下了添加按钮或编辑按钮(创建时:要填充几个字段。现有:添加按钮:要填充的一些额外字段,编辑按钮:大多数字段是只读的,要填写新字段)。

Dim myGrid = Html.Telerik().Grid(Of SomeModel) _
.Name("myGrid")

    If Model.Action = AddNewData Then
        myGrid.Editable(Sub(editing) _  
        editing.Enabled(True).Mode(GridEditMode.PopUp).DisplayDeleteConfirmation(False) _
        .TemplateName("AddTemplate"))

    ElseIf Model.Action = EditOldData Then
      if "gridBoutonPushed = Add" then
        grille.Editable(Sub(editing) _
        editing.Enabled(True).Mode(GridEditMode.PopUp).DisplayDeleteConfirmation(False) _
        .TemplateName("EditTemplateNew"))
      else 'edit button was pushed
        grille.Editable(Sub(editing) _
        editing.Enabled(True).Mode(GridEditMode.PopUp).DisplayDeleteConfirmation(False) _
        .TemplateName("EditTemplateOld"))
      end if
    End If

'generate the add button
myGrid.ToolBar(Sub(c) c.Template(" <a href='#' class='t-button t-button-icontext t-grid-add'>" &
                    "<span style='margin-left: 0pt;' class='t-icon t-add'></span>Add stuff</a>"))

我不知道如何做这if "gridBoutonPushed = Add" then部分。有什么建议么?
...我也愿意以其他方式处理这个问题。

4

1 回答 1

0

我有一个类似的问题,并想出了一个使用 javascript 和 Telerik 的动作处理程序的解决方法首先我将它添加到 Grid 的属性集中:

.ClientEvents(Function(events) events.OnEdit("onEditUsers"))

它将处理程序指向此函数,然后在网格代码之外:

<script type="text/javascript">
function onEditUsers(e) {

           var popup = $("#" + e.currentTarget.id + "PopUp");
           var popupDataWin = popup.data("tWindow");


           if (e.mode == "insert") {
               //for creating
               popupDataWin.title("Add new User");

           }
           else {
               //for editing
               popupDataWin.title("Edit Customer");

               // Hide fields from the pop-up.
               $(e.form).find("#UnwantedField1").closest(".editor-field").prev().andSelf().hide();
               $(e.form).find("#UnwantedField2").closest(".editor-field").prev().andSelf().hide();
           }
       }
   </script>

您可以修改这些函数以使字段按您的需要运行

不幸的是,这要求您的模板全部存在于一个文件中,并且需要您定义哪些字段针对每个不同的事件以哪种方式运行

我希望这有帮助!

于 2012-05-02T21:11:46.467 回答