相关疑难解决方法(0)

模型绑定与禁用文本框

我有一个我定义为的文本框

<%= Html.TextBox("Username", Model.Form.Username, 
        new { @class = "textbox", @disabled = "disabled" })%>
Run Code Online (Sandbox Code Playgroud)

在我的行动中

    [AcceptVerbs(HttpVerbs.Post)]
    [ValidateAntiForgeryToken]
    public ActionResult EditLogin(LoginForm post) {

        ...

        return View(model);
    }
Run Code Online (Sandbox Code Playgroud)

post.Username将为空,所有其他属性绑定正确,但如果我将@disable ="disabled更改为@ readonly ="readonly"用户名绑定正确且一切正常.

看起来模型绑定忽略禁用字段中的值.他们是这样的吗?我仍然需要字段的值来绑定到模型.我可以使用readonly但更喜欢使用disabled,因此用户在视觉上可以看出他们无法编辑字段的值.

asp.net asp.net-mvc model-binding

40
推荐指数
4
解决办法
4万
查看次数

如何创建一个HTML Helper来扩展TextBoxFor()以添加CSS样式?

如何创建一个HTML Helper来扩展TextBoxFor()以添加CSS样式?

@Html.TextBoxFor(model => model.FirstName, new { @class = "txt" }) 
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc asp.net-mvc-3

8
推荐指数
2
解决办法
1万
查看次数

ReadOnly(true)是否与Html.EditorForModel一起使用?

请考虑以下设置:

模型:

public class Product
{
    [ReadOnly(true)]
    public int ProductID
    {
        get;
        set;
    }

    public string Name
    {
        get;
        set;
    }
}
Run Code Online (Sandbox Code Playgroud)

视图:

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" 
Inherits="System.Web.Mvc.ViewPage<MvcApplication4.Models.Product>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Home Page
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <%= Html.EditorForModel() %>
</asp:Content>
Run Code Online (Sandbox Code Playgroud)

控制器:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View(new Product
            {
                ProductID = 1,
                Name = "Banana"
            });
    }
}
Run Code Online (Sandbox Code Playgroud)

结果如下: 替代文字

我期待该ProductID属性不会通过该ReadOnly(true)属性进行编辑.这支持吗?如果没有,有没有办法提示ASP.NET MVC我的模型的某些属性是只读的?我不想隐藏ProductID通过[ScaffoldColumn(false)].

asp.net-mvc readonly-attribute asp.net-mvc-2

7
推荐指数
2
解决办法
1万
查看次数