创建一个涉及迭代的简单应用程序,并且有些东西是错误的.可能很容易解决
本文关键字:很容易 解决 错误 一个 应用程序 简单 迭代 创建 | 更新日期: 2023-09-27 18:14:36
我正在创建一个简单的应用程序,我要求用户指定迭代到哪个数字,以及他们希望输出多少行。我想我真的很接近,但在这方面相当新,所以我相信一点语法和变量调整会让我在那里。我正在使用MVC在。net中创建此。我在运行时收到一个错误,因为"x"answers"y"名称没有显示出来。以下是我的文件:
<body>
<div>
@{
var numCount = x;
var colCount = y;
for (int i = 1; i < numCount; i++)
{
<span>@i</span>
if (i % colCount == 0)
{
<br />
<form id="myForm">
How many numbers would you like to iterate to?
<br/>
<input id="x" type="text" name="x" />
<br/>
How many rows would you like in your iteration?
<br />
<input id="y" type="text" name="y" />
<br />
<input type="submit" value="Calculate!" onsubmit="return i()" />
</form>
}
}
}
</div>
一旦设置了numCount和colCount, X和Y就没有设置。我会将其移到两个视图中,或者使用jquery和ajax。
这是双视图解决方案。
创建一个类,并添加两个int属性(x和y)。创建一个单独的视图,将x和y绑定到单独的输入。
public class Iterator
{
public int x { get; set; }
public int y { get; set; }
}
创建第二个视图,就像第一个视图一样,它接受Model。然后你的第二个视图看起来像这样:
@Model Iterator
<div>
@{
var numCount = Model.x;
var colCount = Model.y;
for (int i = 1; i < numCount; i++)
{
<span>@i</span>
Do more stuff here.
}
}
</div>
我假设您可以绑定一个简单的POST视图到X和Y,并转发到这个迭代视图。如果没有,请告诉我。
编辑:这是第一个视图的样子:
@Model Iterator
@Html.BeginForm("SecondView", "ControllerName", FormMethod.Post)
{
How many numbers would you like to iterate to?
@Html.TextBoxFor(x => x.x)
<br />
How many rows would you like in your iteration?
@Html.TextBoxFor(x => x.y)
<br />
<input type="submit" value="Calculate!">
}
现在只需创建控制器方法,就可以开始了!注意它们可以是HTTPGet,这取决于你。