[英]TagBuilder add attribute without value
同样的问题来自这里。
这一次,我想用AngularJS属性创建一个输入,将其用作指令。
这就是我想要的:
<input ng-angular-abc />
这就是TagBuilder生成的内容:
<input ng-angular-abc=""/>
我试过这个,但都没有用:
tagBuilder.MergeAttribute("ng-angular-abc", "");
tagBuilder.MergeAttribute("ng-angular-abc", null);
tagBuilder.MergeAttribute("ng-angular-abc", "ng-angular-abc");
这不是您需要的,但您可以创建一个帮助方法来生成标记 -
namespace YourNamespace
{
public static class CustomHelpers
{
public static MvcHtmlString TextboxWithProperty(this HtmlHelper html, string property)
{
StringBuilder result = new StringBuilder();
result.AppendFormat("<input {0} />", property);
return MvcHtmlString.Create(result.ToString());
}
}
}
并在你的视图中调用它 -
@using YourNamespace
...
...
...
@Html.TextboxWithProperty("ng-angular-abc")
另一种方法是使用Razor助手在App_Code
目录中创建Helpers.cshtml文件。 你的助手会喜欢这个
@helper InputNg() {
<input ng-angular-abc />
}
要在剃刀视图中访问帮助程序,只需使用文件名,然后使用如下所示的方法:
@Helpers.InputNg()
它可以让您更好地控制HTML。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.