我想访问一个javascript函数,其代码类似于下面这个片段里交流#变量值:
@{ var i=0; }
....
<script type="javascript">
function MyObjects(e) {
for (j = 0; j <= @i; j++) {....}
</script>
.....
{ i=@i+1;}
我想访问一个javascript函数,其代码类似于下面这个片段里交流#变量值:
@{ var i=0; }
....
<script type="javascript">
function MyObjects(e) {
for (j = 0; j <= @i; j++) {....}
</script>
.....
{ i=@i+1;}
你不能“访问”从JavaScript C#的变量,因为C#代码在服务器端运行呈现HTML,以及包括生成的JavaScript的HTML在客户端浏览器中运行。
如果你想呈现一个C#变量的值到客户端上运行的JavaScript代码,你的代码
for (j = 0; j <= @i; j++) {....}
做到了这一点。
但是,如果你期望
{ i=@i+1;}
在客户机上运行,并影响到服务器上的状态,也不会。
解
如果您需要在不发布的HTML页面返回给服务器来更新从JavaScript的服务器上的东西的状态,你可以做到这一点的Ajax回调。
你可以得到C#/剃刀值作为一个字符串很轻松了。
<script type="text/javascript">
var i = parseInt("@i");
</script>