如何根据onClick()更改MVC剃刀值?

时间:2019-05-27 16:06:16

标签: javascript jquery asp.net-mvc button onclick

我目前正在考虑一种布局,我可以利用onclick的razor值中的值,但是我认为我做的不正确。这段代码有意义吗?如果不是,那么有什么解决方法?

@model ICollection<User>
@{
   int id = 0;
}

@foreach (var i in Model) {
   <button onclick = @{id = i.id} changeStatus(@i.id)> Test </button>
}

<div class="popup" style="display: none;">
     <form method=post>
          <input style="hidden" name="id" value="@id" />
          <input type="submit" value="submit" />
     </form>
</div>

<script>
    function changeStatus(id) {
        $('.popup').show();
     }
</script>

1 个答案:

答案 0 :(得分:0)

Razor变量是服务器端的,因此不能在客户端上访问。我将使用jquery更新隐藏字段的值。

@foreach (var i in Model) {
   <button onclick ="changeStatus(@i.id)"> Test </button>
}

<div class="popup" style="display: none;">
     <form method="post">
          <input type="hidden" id="userID" value="" />
          <input type="submit" value="submit" />
     </form>
</div>

<script>
    function changeStatus(id) {
        $('.popup').show();
        $("#userID").val(id);
     }
</script>