javascript
  • razor
  • kendo-grid
  • kendo-asp.net-mvc
  • telerik-mvc
  • 2016-10-24 10 views 0 likes 
    0

    У меня есть две колонки в моей сетке,Как сделать условную кнопку в пользовательском интерфейсе клиента Kendo?

    columns.Bound(c => c.EndDateTime).Format(value: "{0:d}").Title(text: "End"); 
    
    columns.Bound(c => c.LeaveRequestId).ClientTemplate("<a href='" + Url.Action(actionName: "Edit", controllerName: "Leave") + "/#= LeaveRequestId #' class='btn btn-primary btn-xs'>Edit</a>").Title(text: " ").Width(pixelWidth: 50); 
    

    То, что я хочу сделать, это есть кнопка редактирования (вторая строка кода) отображения кнопки, когда текущее время еще до EndDateTime. Я не знаю, лучше ли иметь javascript внутри ClientTemplate или иметь функцию внизу, и как она будет работать.

    Спасибо!

    ответ

    1

    Это должно работать:

    columns.Bound(c => c.LeaveRequestId) 
        .ClientTemplate(
         "# if ((new Date()) < EndDateTime) { #" + 
          "<a href='" + Url.Action(actionName: "Edit", controllerName: "Leave") + "/#= LeaveRequestId #' class='btn btn-primary btn-xs'>Edit</a>" + 
         "# } #" 
        ) 
        .Title(text: " ") 
        .Width(pixelWidth: 50); 
    

    Вы можете поместить сравнение внутри функции, но это до вас (и может зависеть от того, насколько сложна логика сравнения).

     Смежные вопросы

    • Нет связанных вопросов^_^