[英]initialize again c# variable from javascript
我有一个在aspx页中声明的ac#变量,并希望在for(;;)
循环中再次对其进行初始化。 循环正确执行,但我的c#变量未再次初始化。 我在做什么!!
for (var j = 2; j < '<%=menu[i].Length%>'; j++) {
var flag = <%=j++%>
alert(flag);
}
但是在下面的代码中
for (var j = 2; j < '<%=menu[i].Length%>'; j++) {
<%j++;%>
<%j++;%>
var flag = <%=j%>
alert(flag);
}
另一种方法是使用隐藏字段而不是使用变量。
<asp:HiddenField runat="server" ID="hdn" />
var myVal = document.getElementById("<%= hdn.ClientID %>").value;
for (var j = 2; j < '<%=menu[i].Length%>'; j++) {
myVal++;
document.getElementById("<%= hdn.ClientID %>").value = myVal;
}
在服务器端:
int val = int.Parse(hdn.Value);
是的,您可以在.ASPX
页中的变量后面初始化代码。 也可以在.ASPX
页面中使用write FOR
循环。
变量后面的代码必须是您的类的公共变量和成员变量:
public partial class _Default : System.Web.UI.Page
{
public int i = 0;
protected void Page_Load(object sender, EventArgs e)
{
}
}
JavaScript函数:
function increaseVariable() {
<% for (int j = 2; j < menu[i].Length; j++)
{
%>
var flag = <%=i++%>;
alert(flag);
<%}%>
}
您可以测试您的功能以在输入按钮下方添加并在onclick事件中调用上方功能:
<input type="button" value="Increase" onclick="increaseVariable();" />
请让我知道,如果你有任何问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.