【问题标题】:Update Model variable without refreshing Page ASP.Net MVC RAZOR Page更新模型变量而不刷新页面 ASP.Net MVC RAZOR 页面
【发布时间】:2019-07-10 05:15:04
【问题描述】:

我想从我的角度更新我的模型属性,我知道它不推荐。 我所做的是我做了一个隐藏的控件,比如

@Html.HiddenFor(a => a.CurrentIndex);

我使用 Jquery 为控件设置值,例如

$('#CurrentIndex').val(index);

从视图中更新我的 model.CurrentIndex 属性还不够吗?我是不是错过了什么。请用这段代码给我建议,或者引导我走向一个新的方向,我可以实现我的愿望。

【问题讨论】:

  • 为什么要投反对票,请在投反对票之前告诉我我的问题有什么问题
  • 你想在后端保存模型的更新值吗?如果是,那么您可以使用 ajax。
  • 不,我想在我的@Model.CurrentIndex 中设置更改的值,这样我就可以将其用于 Razor 页面中的其他一些计算
  • 您可以更改已使用 JavaScript 呈现给浏览器的任何值。你做了正确的事
  • 但是我的模型属性中没有设置更改的值,它总是显示零,因为类型是 int。

标签: jquery asp.net-mvc razor


【解决方案1】:

一旦页面被渲染,@Model.CurrentIndex 更改为隐藏字段的 id 为 CurrentIndex。所以如果您想再次使用此值,请在 jquery 中使用 id #CurrentIndex 获取值。

当按钮点击值增加时,根据您的要求检查此演示。 (值存储在隐藏字段中)

<input type="button" onclick="setIndex()" value="next">
@Html.HiddenFor(a => a.CurrentIndex)

<div id="showdiv">
    <input type="text" id ="newindex">
</div>

<script type="text/javascript">

    function setIndex(index) {
      var data=$('#CurrentIndex').val();
      data++;
      $('#CurrentIndex').val(data);
      $('#newindex').val(data);
    }

</script>

DEMO

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-10
    • 2018-05-13
    • 1970-01-01
    • 1970-01-01
    • 2019-09-12
    • 1970-01-01
    • 1970-01-01
    • 2014-03-09
    相关资源
    最近更新 更多