[英]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.