
@HTML.Label(@DDHelper.GetContent("user_name"),HTMLAttributes: new { @class = "control-label col-md-3" }) @ DDHelper.GetContent(“user_name”)返回一个字符串,该字符串设置为标签文本.当@ DDHelper.GetContent(“user_name”)返回“Hello”时.标签未创建且HTML源为空.
我知道这是因为@ HTML.Label()不允许’.’这是我的问题的根源,我应该使用@HTML.LabelFor(),但是当我只想显示一个字符串时,如何使用@ HTML.LabelFor()?
解决方法 检查@ HTML.Label的重载,您正在使用的是:public static MvcHTMLString Label(this HTMLHelper HTML,string Expression,object HTMLAttributes)
你想要的是
public static MvcHTMLString Label(this HTMLHelper HTML,string labelText,object HTMLAttributes)
对HTML标签的含义存在一种常见的误解.在winforms上,标签是放置一些文本的地方 – 在HTML中不是这种情况.在HTML a< label>是允许用户单击您的文本并使焦点/光标指向相应的输入.
标签的完整语法是:
<label for="controlname">caption</label>
上面重载中的’Expression’部分是HTML中的“for”部分 – 它必须指向控件名称.
如果您正在尝试这样做(将标签与控件配对),请尝试:
@HTML.Label("user_name",@DDHelper.GetContent("user_name"),HTMLAttributes: new { @class = "control-label col-md-3" }) 您的输入名为“user_name”的位置.这是@ HTML.LabelFor的用武之地,如:
@HTML.Labelfor(model=>model.Username,HTMLAttributes: new { @class = "control-label col-md-3" }) 所以你不要硬编码字段名称,他们重构.
如果您“只想显示字符串”,那么您可能不需要< label>.如果你只需要一些简单的文本,你不需要@HTML任何东西,只需输出翻译:
<div class='control-label col-md-3'> @DDHelper.GetContent("user_name")</div> 但是当你使用’control-label’时,我怀疑你确实想要< label>.
总结以上是内存溢出为你收集整理的c# – Razor标签点周期全部内容,希望文章能够帮你解决c# – Razor标签点周期所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)