当前位置: 首页 > 知识库问答 >
问题:

如何在ASP.NET MVC中使布尔HTML5属性“条件化”?

蓬运诚
2023-03-14

我正在使用ASP.NET MVC(5.2.3.0)创建一个表单字段:

@Html.TextBoxFor(
    x => x.UserName, 
    new { 
        @class = "form-control", 
        placeholder = "Enter your username", 
        required = true, 
        autofocus = true 
});
autofocus = String.IsNullOrEmpty(this.Model.UserName)
autofocus = String.IsNullOrEmpty(this.Model.UserName) ? null : ""`

有人知道怎么解决这个问题吗?

共有1个答案

杜昆琦
2023-03-14

您可以在视图之前的某个地方创建属性字典:

@{
    var usernameAttrs = new Dictionary<string, object>
    {
        {"class ", "form-control"},
        {"placeholder  ", "Enter your username"},
        {"required", true},
    };

    if (String.IsNullOrEmpty(this.Model.UserName))
    {
        usernameAttrs.Add("autofocus", true);
    }
}

并在textboxfor()中使用

@Html.TextBoxFor(x => x.UserName, usernameAttrs);
 类似资料:
  • 这方面的指示如下” 创建名为FavoriteNumber的新项目 到目前为止,我已经完成了前4项任务。我在第五颗子弹上遇到了麻烦(我想我还不完全理解)。我试图通过创建一个名为all的新方法来实现这一点,我计划在其中调用isSingle和isEven,并使用if-else语句来比较它们并相应地返回消息。但我被卡住了,在我上面的代码中留下了解释我的问题的注释。 有人能帮我完成这个任务吗?或者至少给我指

  • 问题内容: 如何有条件地添加一个元素属性,例如复选框的? 我认为以前的Angular版本具有并且似乎都提供了我所追求的功能。但是,这些属性在Angular 2中似乎不存在,我看不到提供此功能的其他方法。 问题答案: 删除它: 要么 暗示: 属性与属性 当您在其中添加此绑定的HTML元素不具有该绑定中使用的名称的属性(在这种情况下),并且也没有将Angular组件或指令应用于具有的同一元素时,则无法

  • 如何有条件地添加元素属性,例如复选框的? Angular以前的版本有< code>NgAttr和我认为< code>NgChecked,它们似乎都提供了我所追求的功能。然而,这些属性在Angular 2中似乎并不存在,我也看不出有其他方法可以提供这种功能。

  • 嗨,我想从属性文件自动连接布尔值,已经参考了以下链接,与地图url spring属性(属性-占位符)自动连接 但我想自动连接一个布尔属性,也提到了问题spring自动原始布尔spring自动原始布尔,但那是bean值,在我的例子中,我想用点分隔的属性值做同样的事情。 //失败并给出字符串,不能强制转换为布尔值//这没有给出用does定义的bean/property,但我有正确的属性文件,它证明容器

  • 我正在使用与类似 我有在我的主应用程序类上 但是,不起作用。如果我的属性是false,并且我注释掉yaml文件中的CloudBucket对象,它在启动时失败,因为它不能绑定云桶属性。如果属性是false,那么该对象不应该是必需的,然后bean应该是null。我如何使这个工作?

  • 问题内容: 我正在尝试标记Javascript 中所需的输入框。 如果该字段最初标记为required: 当用户尝试提交时,将收到验证错误: 但是现在我想通过Javascript 将属性设置为“运行时”: 使用相应的脚本: 除非我现在提交,否则没有验证检查,也没有阻止。 设置HTML5验证布尔属性的正确方法是什么? 您问该属性的值是什么? HTML5验证属性记录为: 4.10.7.3.4 属性 该