Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 向textbox ASP.Net MVC添加引导CSS类属性_Html_Css_Asp.net Mvc_Razor - Fatal编程技术网

Html 向textbox ASP.Net MVC添加引导CSS类属性

Html 向textbox ASP.Net MVC添加引导CSS类属性,html,css,asp.net-mvc,razor,Html,Css,Asp.net Mvc,Razor,当使用new{@class=“form control”}将css类属性添加到使用html帮助程序生成的文本框中时,该属性将作为值添加,而相同的方法适用于textarea控件 @{ ViewBag.Title=“新建”; Layout=“~/Views/Shared/_Layout.cshtml”; } 新的 @使用(Html.BeginForm()) { @Html.标签(“标题”); @TextBox(“Title”,new{@class=“form control”}) @Html.La

当使用
new{@class=“form control”}
将css类属性添加到使用html帮助程序生成的文本框中时,该属性将作为值添加,而相同的方法适用于
textarea
控件

@{
ViewBag.Title=“新建”;
Layout=“~/Views/Shared/_Layout.cshtml”;
}
新的
@使用(Html.BeginForm())
{
@Html.标签(“标题”);
@TextBox(“Title”,new{@class=“form control”})
@Html.Label(“Body”)
@TextArea(“Body”,new{@class=“form control”})
}

您正在为方法使用此超负荷的
Html.TextBox

public static MvcHtmlString TextBox(
    this HtmlHelper htmlHelper,
    string name,
    object value
)
如果模型状态字典不包含输入值,则第二个参数设置输入值。因此,您的代码将呈现如下内容

<input id="Title" name="Title" type="text" value="{ class = form-control }">
@Html.TextBox("Title", null, new { @class = "form-control" })
这里值得注意的是,helper方法将在模型状态字典和视图状态字典中查找值。因此,如果您的操作方法将
ViewBag.Title
设置为某个值,则如果调用此方法时将
null
作为值传递,则该值将用作输入值。默认的MVC项目模板使用
ViewBag.Title
设置页面标题。因此,您可能会在输入中看到该值

为了解决这个问题,您可以显式地传递一个空字符串,而不是
null

@Html.TextBox("Title", string.Empty, new { @class = "form-control" })

您正在为方法使用此重载的
Html.TextBox

public static MvcHtmlString TextBox(
    this HtmlHelper htmlHelper,
    string name,
    object value
)
如果模型状态字典不包含输入值,则第二个参数设置输入值。因此,您的代码将呈现如下内容

<input id="Title" name="Title" type="text" value="{ class = form-control }">
@Html.TextBox("Title", null, new { @class = "form-control" })
这里值得注意的是,helper方法将在模型状态字典和视图状态字典中查找值。因此,如果您的操作方法将
ViewBag.Title
设置为某个值,则如果调用此方法时将
null
作为值传递,则该值将用作输入值。默认的MVC项目模板使用
ViewBag.Title
设置页面标题。因此,您可能会在输入中看到该值

为了解决这个问题,您可以显式地传递一个空字符串,而不是
null

@Html.TextBox("Title", string.Empty, new { @class = "form-control" })

请尝试这样做
@Html.TextBox(“Title”,“”,new{@class=“form control”})

您当前使用的过载是

HtmlHelper.TextBox(string name, object value)

请尝试这样做
@Html.TextBox(“Title”,“”,new{@class=“form control”})

您当前使用的过载是

HtmlHelper.TextBox(string name, object value)

此方法有效,正确呈现了
textbox
,只有
textbox
控件的默认值为
new
,请阅读答案的最后一段。您是否在操作方法中设置了
ViewBag.Title=“New”
?您可以显式传递
string.empty
而不是
null
。请参见答案中的更新。此方法有效,正确呈现了
textbox
,只有
textbox
控件的默认值为
new
,请阅读答案的最后一段。您是否在操作方法中设置了
ViewBag.Title=“New”
?您可以显式传递
string.empty
而不是
null
。请参阅答案中的更新。