Asp.net不是重复调用方法(方法TableAdapterExtensions.Increment(
))。视图的方法调用。这是javascript的一部分
function SetCountSize() {
var CountSizes = $('#CountSizes').val();
if (CountSizes != "") {
$("[code]").each(function(indx, element) {
element.remove();
});
for(var i=0;i<CountSizes;i++)
$("#InsertSide").before('@Html.Side(TableAdapterExtensions.Increment())');
}
}
方法TableAdapterExtensions.Increment()
public static int Increment()
{
int j= (int)cache.Get("increment", null);
cache.Set("increment", ++j, null, null);
int h = j;
return j;
}
答案 0 :(得分:1)
Razor代码在发送到视图之前在服务器上进行解析。您的@Html.Side(TableAdapterExtensions.Increment()
助手被调用一次(javascript循环尚不存在)并呈现其输出。生成视图后,您的脚本将显示为
for(var i=0;i<CountSizes;i++)
$("#InsertSide").before(1); // assuming j=1
}
所以当调用SetCountSize()
函数时,它只会重复相同的值