【问题标题】:Hide/show element with asp.net mvc使用 asp.net mvc 隐藏/显示元素
【发布时间】:2014-12-03 17:25:30
【问题描述】:

我意识到这可能很简单,但我所有的尝试/研究都落空了。

我的观点如下

@if (Model.HasError)
{
    <div class="alert alert-danger" role="alert">
           Username or password is incorrect
    </div>
}

我的控制器看起来或多或少像

    public ActionResult Login(User model)
    {
        model.HasError = true;
        return View(model);
    }

这会产生所需的结果并显示消息。但是,该 url 也填充了模型中的所有值。我真的只想显示模型的HasError 属性。

有没有更好的方法来做到这一点?我查看了两种不同的模型,但隐藏/显示一个元素似乎很多......

【问题讨论】:

  • @DStanley 我猜@Url.Action("Login", model) - 因为 OP 希望有一个单一的行动模型并查看模型的所有字段将在 url 中结束(可能包括纯文本密码以使其更加荒谬)。

标签: c# asp.net-mvc razor


【解决方案1】:

可以创建一个新的User 对象并设置HasError 属性:

public ActionResult Login(User model)
{
    return View(new User() {HasError = true});
}

但不清楚您看到的是哪个 URL,以了解这是否是 正确 方法。

【讨论】:

    猜你喜欢
    • 2021-07-01
    • 1970-01-01
    • 2017-07-16
    • 2022-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-22
    • 1970-01-01
    相关资源
    最近更新 更多