我做了一个页面,我想从cs代码里像页面里传递值。可是总提示我错误!取不到值,这是为什么!Default.aspx.cspublic ArrayList array;
public int forcount;
protected void Page_Load(object sender, EventArgs e)
{
      for (int i = 0; i < 10; i++)
      {
           picArray.Add(i);
           forcount++;
       }
}Default.aspx  <script type="text/javascript">
    var forcount=<%# forcount %>;
var array=<%# array%>
    alert(forcount);
    </script>
请各位前辈帮我指正

解决方案 »

  1.   

    <%#  -->   <%=
      

  2.   

    =<%# forcount %>;--》=<%= forcount %>;
      

  3.   

        var forcount=<%# forcount %>;
    var array=<%# array%>=>    var forcount=<%= forcount %>;
    var array=<%= array%>or      for (int i = 0; i < 10; i++)
          {
               picArray.Add(i);
               forcount++;
           }=>      for (int i = 0; i < 10; i++)
          {
               picArray.Add(i);
               forcount++;
           }
           DataBind();
      

  4.   

    数组应该怎么传递啊!
     var picArray=<%=picArray%>;这样不对啊!
      

  5.   

    在页面里给我打印出
    var picArray= System.Collections.ArrayList;
      

  6.   

    public ArrayList array;能直接这样?不清楚,没试过var array=<%# array%>
    public string array;
    public int forcount;
    protected void Page_Load(object sender, EventArgs e)
    {
          for (int i = 0; i < 10; i++)
          {
               array+=i.ToString()+",";
               forcount++;
          }
      if (!string.IsNullOrEmpty(array))
         {
              array = array.Substring(0, array.Length - 2);
         }
    }  <script type="text/javascript">
        var forcount=<%# forcount %>;
        var array=new Array(<%# array%>);
        alert(forcount);
        </script>
      

  7.   


    public ArrayList array;
    public int forcount;
    protected void Page_Load(object sender, EventArgs e)
    {
          sb.Append("<script type=\"text/javascript\">");
          sb.Append(System.Environment.NewLine);
          sb.Append(" var array=new Array();");          
          for (int i = 0; i < 10; i++)
          {
               picArray.Add(i);
               sb.Append("array["+i+"]='"+i+"';");
               forcount++;
           }
          sb.Append("var forcount='"+forcount+"'; ");
         sb.Append("</script>");
                this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), Guid.NewGuid().ToString(), sb.ToString());}//传数组,为什么不直接这样输出js数组呢
      

  8.   

    不行我试过几种方法都传递Array是不行的!
    方法一:
    var picArray=new Array(<%=picArray%>);
    错误: 'System' 未定义
    方法二:
    var picArray=new Array(<%#picArray%>);
    不报错!但是
    alert(picArray.length); 打印出来是0显然不对!
    方法三:
    var picArray=<%#picArray%>;
    提示语法错误!
    HTML 显示结果是var picArray=;
    方法四:
    var picArray=<%=picArray%>;
    错误: 'System' 未定义
    HTML 显示结果是var picArray=System.Collections.ArrayList;
      

  9.   

    不好意思,没看到是数组。数组不能这样写如下:protected string arrayStr = string.Empty;
    protected int forcount;protected void Page_Load(object sender, EventArgs e)
    {
          for (int i = 0; i < 10; i++)
          {
               arrayStr +=i.ToString()+",";
               forcount++;
          }
      
              arrayStr = arrayStr.TrimEnd(',');
      
    }
      <script type="text/javascript">
        var forcount=<%# forcount %>;
        var array=[<%# array%>];
        alert(forcount);
        </script>
      

  10.   

    9楼前辈!
    protected string arrayStr = string.Empty;
    不能生成一个ArrayList用吗!
      

  11.   

    不对!我就是照着以上方法写的!
    我在把我的方法贴出来!
    public string picArray = string.Empty;
    protected void Page_Load(object sender, EventArgs e)
    {
                for(int i=0;i<10;i++)
                {
                    picArray += i.ToString() + ",";
                }
    } <script type="text/javascript">
        var forcount=<%# forcount %>;
        var array=[<%# array%>];
        alert(array.length);
        </script>这样alert显示是0, HTML打印出来是var array=[];如果我换一种方法:
     var array=[<%= array%>];
    HTML打印出来是var array=[0,1,2,3,4];
    但是页面报错!提示缺少]
      

  12.   

    javascript不认.NET中的ArrayList的.
      

  13.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
         <script type="text/javascript">
        var forcount=<%= forcount %>;
        var array=[<%= arrayStr%>];
        alert(array.length);
        
        var forcount1=<%# forcount %>;
        var array1=[<%# arrayStr%>];
        alert(array1.length);
        </script></head>
    <body>
    </body>
    </html>protected string arrayStr = string.Empty;
        protected int forcount;
        protected void Page_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 10; i++)
            {
                arrayStr += i.ToString() + ",";
                forcount++;
            }        arrayStr = arrayStr.TrimEnd(',');        DataBind();
        }
    <%# %> 要和 DataBind(); 一起使用
      

  14.   

    我用DataBind(); 了!可是还是提示我
    但是页面报错!提示缺少]是不是浏览器的问题!我是IE8
      

  15.   


    protected string arrayStr = string.Empty;    protected void Page_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 10; i++)
            {
                arrayStr += i.ToString() + ",";
            }        arrayStr = arrayStr.TrimEnd(',');        DataBind();
        }    <script type="text/javascript">    var array=[<%= arrayStr%>];
        alert(array.length);    var array1=[<%# arrayStr%>];
        alert(array1.length);
        </script>
    我现在就这么写的!
    就是提示我缺少 ]
      

  16.   

    你把你这页生成的HTML 代码贴一下,通过右键查看源文件 能得到