变量strCSSClass通常具有值,但有时为空.
我不想在这个输入元素的HTML中包含一个空的class ="",这意味着如果strCSSClass为空,我根本不需要class =属性.
以下是执行条件HTML属性的一种方法:
<input type="text" id="@strElementID" @(CSSClass.IsEmpty() ? "" : "class=" + strCSSClass) />
Run Code Online (Sandbox Code Playgroud)
有更优雅的方式吗?特别是我可以遵循与元素的其他部分使用相同的语法:class ="@ strCSSClass"?
我试图在一个字符串变量中插入一个textboxfor来完成他的参数,但结果是这样的variablename=.....
例如,如果我想禁用textbox取决于boolean在modelview:
@string isDisabled = (Model.kbinding_boolvar ? "disabled" : "");
@Html.TextBoxFor(m => m.kbinding_namevar, new { @class = "classname", @is_disabled })
Run Code Online (Sandbox Code Playgroud)
html输出是这样的:
<input class="classname" isDisabled="disabled" data-val="true" name="kbinding_textbox_name" type="text" value="" />
Run Code Online (Sandbox Code Playgroud)
代替 :
<input class="classname" disabled data-val="true" name="kbinding_textbox_name" type="text" value="" />
Run Code Online (Sandbox Code Playgroud)
用于实现结果的正确语法是什么?