Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';t减少ASP.NET核心MVC中的局部变量_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# Can';t减少ASP.NET核心MVC中的局部变量

C# Can';t减少ASP.NET核心MVC中的局部变量,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,这是我的.cshtml文件,我正在声明并将值赋给变量x。 当我单击id为“b”的按钮时,我希望使用这个变量,然后用一个变量减少,但是当我调试这个项目时,我看到变量x没有减少。我犯了什么错误 @model IEnumerable<WebApplicationMVC.Models.Test> @{ ViewData["Title"] = "Testing"; int x = Model.Count() - 1; } <script> <div id

这是我的.cshtml文件,我正在声明并将值赋给变量x。 当我单击id为“b”的按钮时,我希望使用这个变量,然后用一个变量减少,但是当我调试这个项目时,我看到变量x没有减少。我犯了什么错误

@model IEnumerable<WebApplicationMVC.Models.Test>

@{
    ViewData["Title"] = "Testing";
    int x = Model.Count() - 1;
}

<script>

<div id="partial">
    @await Html.PartialAsync("Question", Model.ToList()[0])
</div>

<input type="button" id="b" value="next" class="btn btn-default" />

$("#b").click(function () {

    if (@x == 0) {
        window.alert("Finished")
        window.location.href = '@Url.Action("Index", "Subject")'
    }

    window.alert("Value of x is -> " + @x);

    $.ajax({
        url: '@Url.Action("Question", "Test")',
        type: 'GET',
        data: { id: '@Model.ToList()[x].ID' },
        success: function (result) {
            $("#partial").html(result);
        }
    });

    @{ 
        x--;         //this doesn't work...
    }

});
@model IEnumerable
@{
ViewData[“标题”]=“测试”;
int x=Model.Count()-1;
}
@等待Html.partialSync(“问题”,Model.ToList()[0])
$(“#b”)。单击(函数(){
如果(@x==0){
窗口警报(“完成”)
window.location.href='@Url.Action(“索引”、“主题”)'
}
window.alert(“x的值为->”+@x);
$.ajax({
url:'@url.Action(“问题”、“测试”),
键入:“GET”,
数据:{id:'@Model.ToList()[x].id'},
成功:功能(结果){
$(“#部分”).html(结果);
}
});
@{ 
x--;//这不起作用。。。
}
});

变量x是在服务器上运行的C#中的。它永远不会到达浏览器

在浏览器中单击某个内容时,您希望变量减小。
改用Javascript变量:

<script>
    var x = @(Model.Count() - 1);  // javascript variable, initialised to a value from Razor

    if (x == 0)
    {
       // finished
    }

    window.alert("Value of x is -> " + x);

    x--;

var x=@(Model.Count()-1);//javascript变量,初始化为Razor中的值
如果(x==0)
{
//完成
}
窗口警报(“x的值为->”+x);
x--;