zoukankan      html  css  js  c++  java
  • mvc表单如何绑定bool类型的属性或变量

    先来看一组代码:

    视图代码:

    @model MvcTest.Controllers.Test
    @{
        Layout = null;
    }
    
    <!DOCTYPE html>
    <html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <title>表单提交</title>
    </head>
        <body>
            <form method="POST" action="">
                <input name="Tester" value="@Model.Tester" />
                <input type="submit" />
            </form>
        </body>
    </html>

    Model类:

    public class Test
    {
         public bool Tester { get; set; }
    }

    控制器代码:

    public ActionResult FormPost()
    {
          Test model = new Test();
          model.Tester = true;
          return View(model);
    }

       问题是在view中name为Tester的Input属性value值是多少?相信很多人会认为是true,但结果是value。

    同样把Model.Tester放在其他html标签里,值会跟其属性一一对应。

    <span id="id" name="name"></span>

      那怎样解决这个问题呢?请看下面代码:

    <input name="Tester" value="@Model.Tester.ToString()" />

          对于bool类型转换string解释是"将此实例的值转换为其等效字符串表示形式("True"或"False")",照这

    样说,Model.Tester.ToString返回true也不难理解。但是为什么没有直接返回true呢?这可能是razor视

    图是这样处理的吧。在asp.net里不存在这样的情况。

          在此要感谢园友(519740105)的帮助,问题才得以解决。

  • 相关阅读:
    2015总结篇
    Android应用性能优化实践
    Android国外学习资源汇总
    直接拿来用!十大Material Design开源项目
    selenium12-读取文件 excel
    selenium11-自动化练习读取文件txt
    selenium10-python3部分代码复习
    selenium09-自动化练习案例
    selenium08-测试用例模块化与数据分离
    selenium07-处理 alter 对话框
  • 原文地址:https://www.cnblogs.com/paulhe/p/3946084.html
Copyright © 2011-2022 走看看