2015-09-02 2 views
0

Я пытаюсь написать ниже шаблон, но после выполнения, я получаю Invalid Template Error в консоли.Как проверить свойство enum и model внутри шаблона kendo

@using MYApplication.EnumContract 
    @model MYApplication.Models.CustomerModel 
    <script type="text/kendo-x-tmpl" id="EntitiesTemplate"> 
      <table> 
     <tr> 
      # if ((int)CustomerStatus.APPROVED == custStatus && CustomerModel.UserRole == 1) { # 
      <td> 
       APPROVED 
      </td> 
      # } 
      else {# 
      <td> 
      NOT APPROVED 
      </td> 
      #} 
      # 

    </tr> 
    </table> 

</script> 

Пожалуйста, дайте мне знать, как мы можем проверить Enum & модель внутри шаблона ...

+0

Я не думаю, что вы можете бросить (Int) в JavaScript? ? –

+0

@RickS: да !! вы правы, мы не можем использовать int в javascript, и, насколько мне известно, мы не можем использовать enum & model для check.so, каков был бы правильный подход для обработки этого типа состояния? – Dev

ответ

0

Поскольку вы выполняете код яваскрипта произвольном в шаблоне (# expression #), то вы можете попробовать добавить глобальную переменную ваша страница, содержащая все ваши значения перечислений.

Поместите этот скрипт выше всего шаблона (в бритвенной странице)

<script> 
var approvedVal = parseInt("@((int)CustomerStatus.APPROVED)"); 
</script> 

и ваш шаблон должен быть, как этот

<script type="text/kendo-x-tmpl" id="EntitiesTemplate"> 
    <table> 
     <tr> 
      # if (custStatus == approvedVal && CustomerModel.UserRole == 1) { # 
      <td>APPROVED</td> 
      # } else { # 
      <td>NOT APPROVED</td> 
      # } # 
     </tr> 
    </table> 
</script>