我想像这样在Razor中使用一个javascript变量:

我的html:

@{List<AddTempViewModel> tempsToView = new List<AddTempViewModel>();
  tempsToView = (List<AddTempViewModel>)ViewData["tempsToView"];}

@if (tempsToView != null)
{
    @foreach (var item in tempsToView)
    {
       <a class="click" id="@item.TempDocumentId">
       <img id="leftSideBarElement" src="@item.TempDocumentAddressUrl" />
       </a><br />
    }
<form method="post" action="">
   <input id="documentNumber" class="form-control" type="text" name=""
     placeholder="Email" />
 </form>


和我的脚本:

<script>

    $(document).ready(function () {
        $(".click").click(function () {
            var divID = $(this).attr('id');
            alert(divID);
            var docName = @tempsToView[divID].TempDocumentId
            $("#documentNumber").val(docName);
        });
    });
</script>


但我无法使用divID设置@tempsToView的索引。
请帮助我该做什么。
谢谢。

最佳答案

您无法基于JavaScript中发生的事情设置Razor变量。在所有Razor已运行之后,Razor运行在服务器端,而JavaScript运行在客户端。

07-26 03:21