在剑道模板中切换声明

Jud*_*ran 7 templates switch-statement kendo-ui

我正在使用Kendo Template,我能够创建一个条件语句(IF语句),如文档中所述.这是我的代码.

#if ((item.ControlType) == "tbx"){#
   @(Html.Kendo().AutoComplete()
   .Name("#=ctrlid#")
   .ToClientTemplate())
#}#
Run Code Online (Sandbox Code Playgroud)

这很好用.

但我想要的是一个Switch Case Statement.我试过这个,但它不起作用.它说"无效的模板".

# switch (item.ControlType) {#
  # case "tbx": #
     @(Html.Kendo().AutoComplete()
       .Name("#=ctrlid#")
       .ToClientTemplate())
  # break; #
  # }#
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?或者,剑道模板只是不可能解释开关案例陈述?(关于后者,我不这么认为......我肯定错过了一些东西)

有人可以帮我吗?谢谢!^^

Pet*_*bev 18

我检查你的情况,我找到了错误的原因.基本上为了保持JavaScript有效,你只需要使用一对#符号来表示switch语句和第一个case语句.

例如

代替:

# switch (item.ControlType) {#
# case "tbx": #
Run Code Online (Sandbox Code Playgroud)

使用:

# switch (item.ControlType) {
  case "tbx": #
Run Code Online (Sandbox Code Playgroud)

为了演示它,这里是一个jsbin.基本上,如果将开关与MVC包装器生成的某个窗口小部件组合在一起,应该没有问题.如果有,请告诉我.