我用c#定义了一个Hashtable,然后在js里取不到Hashtable的值。
htCount=<%=ht.Count%>
var m=1;
alert(<%=ht["+m+"]%>)
如果不用变量m,就可以取到
alert(<%=ht[1]%>)

解决方案 »

  1.   

    alert( '<%=ht[m]%>') 
      

  2.   

    月经帖又来了……
    C#在服务器端,JavaScript在客户端。服务器端的代码先于客户端运行,所以客户端能取到服务器端代码里写的东西,服务器端代码却不能使用客户端的变量。所以如果你实在要做,建议你把服务器端的Hashtable用JSON传到客户端,这样在客户端就可以直接用整个Hashtable了(当然是Hashtable不太大的情况下)。
    .NET 3.5直接支持JSON,用法自己查MSDN吧。
      

  3.   

    注意代码运行的优先级
    服务器代码执行完毕后才是脚本 
    <% var m = 1%>
    alert( '<%=ht[m]%>')  这样就可以了. 
      

  4.   

    <% int m = 1;%>
    alert( '<%=ht[m]%>') 
      

  5.   

    C#在服务器端,JavaScript在客户端。服务器端的代码先于客户端运行,所以客户端能取到服务器端代码里写的东西,服务器端代码却不能使用客户端的变量。所以如果你实在要做,建议你把服务器端的Hashtable用JSON传到客户端,这样在客户端就可以直接用整个Hashtable了(当然是 Hashtable不太大的情况下)。
    .NET 3.5直接支持JSON,用法自己查MSDN吧。