Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
C# 在ASP.NET MVC 4 Razor中,如何获取@Html.Label的值(文本)?_C#_Asp.net_Asp.net Mvc_Asp.net Mvc 4_Razor - Fatal编程技术网

C# 在ASP.NET MVC 4 Razor中,如何获取@Html.Label的值(文本)?

C# 在ASP.NET MVC 4 Razor中,如何获取@Html.Label的值(文本)?,c#,asp.net,asp.net-mvc,asp.net-mvc-4,razor,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,Razor,很抱歉,我尝试过搜索,但没有收到任何与我的问题相关的信息 我的看法是: <legend>COMFIRM</legend> @using (Ajax.BeginForm("AdminDeleteResult", "Admin", new AjaxOptions { UpdateTargetId = "div" })) { <div id="div"></div>

很抱歉,我尝试过搜索,但没有收到任何与我的问题相关的信息

我的看法是:

<legend>COMFIRM</legend>
    @using (Ajax.BeginForm("AdminDeleteResult", "Admin",
                            new AjaxOptions { UpdateTargetId = "div" }))
    {
        <div id="div"></div>
        <h6>ARE YOU SURE WANT TO DELETE</h6>
        <ol>
            <li>
                @Html.Label("User ID:")
                @Html.Label("userid", Model.userid)
            </li>
            <li>
                @Html.Label("Username:")
                @Html.Label(Model.username)
            </li>
        </ol>
        <button>DELETE</button>
    }
</fieldset>
我尝试用@Html.TextBoxuserid替换标签,效果很好。 但我想使用标签,因为我不希望人们改变它的价值。
谢谢你的帮助

这不是标签的目的,您必须使用输入。表单的目的是收集数据,数据保存在表单元素中

如果您不希望人们更改可以讨论的值,可以将输入设置为只读或隐藏

因为您的视图使用模型,所以您可以使用带有lambda表达式的HtmlHelpers来创建表单

@using (Ajax.BeginForm("AdminDeleteResult", "Admin",
                        new AjaxOptions { UpdateTargetId = "div" }))
{
    <div id="div"></div>
    <h6>ARE YOU SURE WANT TO DELETE</h6>
    <ol>
        <li>
            @Html.Label(model => model.userid)
            @Html.TextBoxFor(model => model.userid, new { @readonly="readonly" })

            @* @Html.HiddenFor(model => model.userid) *@
        </li>
        <li>
            @Html.Label(model => model.username)
            @Html.TextBoxFor(model => model.username, new { @readonly="readonly" }) 
        </li>
    </ol>
    <button>DELETE</button>
}

这不是标签的用途,您必须使用输入。表单的目的是收集数据,数据保存在表单元素中

如果您不希望人们更改可以讨论的值,可以将输入设置为只读或隐藏

因为您的视图使用模型,所以您可以使用带有lambda表达式的HtmlHelpers来创建表单

@using (Ajax.BeginForm("AdminDeleteResult", "Admin",
                        new AjaxOptions { UpdateTargetId = "div" }))
{
    <div id="div"></div>
    <h6>ARE YOU SURE WANT TO DELETE</h6>
    <ol>
        <li>
            @Html.Label(model => model.userid)
            @Html.TextBoxFor(model => model.userid, new { @readonly="readonly" })

            @* @Html.HiddenFor(model => model.userid) *@
        </li>
        <li>
            @Html.Label(model => model.username)
            @Html.TextBoxFor(model => model.username, new { @readonly="readonly" }) 
        </li>
    </ol>
    <button>DELETE</button>
}

它是@Html.Displayusername或更好的@Html.DisplayForm=>m.username。注意:您不需要“标签”标签是与表单控件关联的html元素-单击它会将焦点设置为关联控件。您需要开始使用ViewModels,如果您将视图绑定到ViewModel,那么您只需获取绑定到viewiman nemati的任何值即可,我用了@model.Models。UserModel@NoobFromMars他想建议您在操作中也使用该模型。对不起,我的意思是在操作方法中正确使用您的模型以获得所需的值。它是@Html.Displayusername或更好的@Html.DisplayForm=>m.username。注意:您不需要“标签”标签是与表单控件关联的html元素-单击它会将焦点设置为关联控件。您需要开始使用ViewModels,如果您将视图绑定到ViewModel,那么您只需获取绑定到viewiman nemati的任何值即可,我用了@model.Models。UserModel@NoobFromMars他想建议你在行动中也使用该模型。对不起,我的意思是在行动方法中正确使用你的模型,以获得你需要的价值。
[HttpPost]
public ActionResult AdminDeleteResult(UserModel user)
{
   string userid =user.userid; // userid is storred in user
   // ...
}