【问题标题】:Is there any way to update the model in the view?有没有办法更新视图中的模型?
【发布时间】:2011-11-23 10:35:23
【问题描述】:

我正在用 mvc 3 编写一个项目。

我想使用 razor 在视图中设置一个对象。 为了得到这个值,我这样做了:@Model.UserName;,我得到了用户名。

我的问题是如何设置用户名。我想做类似的事情:@Model.userName="xxx";

提前致谢:)

【问题讨论】:

  • 你能解释一下为什么是 -1 吗?
  • 看起来你把 razor mvc 语法和 javascript 混在一起了。

标签: javascript .net asp.net-mvc-3 model views


【解决方案1】:

一开始你不能在 JS 中编写任何 c# 代码,我猜你正在尝试在 JS 中更改 post 数据, 之后,当您提交在服务器中处理的发布请求时,您的操作将获得预期的模型

有办法

<script type="text/javascript">
    $(function () {
        $("form").submit(function () {
            var form = this;
            form.UserName.value = "xxxxxx"
            form.submit();
        });
    })
</script>

【讨论】:

  • 我明白你的问题了吗?
  • 不,那我可以这样做:@Html.EditorFor(model => model.userName)
  • 说我想写一个链接的href
  • 你能更详细地解释一下你需要什么来获得结果
  • 我只想将现有值更改为另一个值 - 在视图中。
【解决方案2】:

你可以这样做:

@model MyModel

@{
    Model.Username = "xxx";
}

但我不确定你为什么要这样做。

【讨论】:

    【解决方案3】:

    这是解决我的问题的方法:

    在javascript中:

     var jqvalue;
        .........
        .........
        $("#id").val(jqvalue);
    

    剃须刀:

    @Html.Hiddenfor(model => model.userName , new {@Id ="id"})
    

    而且都在同一个视图中。

    【讨论】:

      猜你喜欢
      • 2018-11-22
      • 1970-01-01
      • 2015-09-10
      • 2016-08-13
      • 2013-05-12
      • 1970-01-01
      • 2014-05-23
      • 2012-03-05
      • 1970-01-01
      相关资源
      最近更新 更多