在一个datalist中的服务器控件上(比如文本框)使用windows.open,新窗口地址参数是数据绑定时
会出现"服务器标记的格式不正确。"的错误,麻烦大家帮帮我!onClick="window.open('AAA.aspx?id=<%# DataBinder.Eval(Container.DataItem,"id") %>','title','status=yes,scrollbars=yes,width=570,height=500')"

解决方案 »

  1.   

    ="window.open('AAA.aspx?id=<%# DataBinder.Eval(Container.DataItem,"id") %>','title','status=yes,scrollbars=yes,width=570,height=500')"可能错在
    "id",
    可能这样,会造成问题,可能最前面的“会和id前面的”成为一对,
    你最好将这个window.open写成个函数,然后在将绑定的数据当成参数传入
      

  2.   

    你可参照下面的代码,在后台进行添加事件
    //先绑定控件
    this.myGrid.DataSource = this.myTab;
    this.myGrid.DataKeyField = "usr_id";
    this.myGrid.DataBind();
    //绑定之后循环此控件,为每一个按钮添加事件
    int i=0;
    int mycount = this.myGrid.Items.Count;string myKeyid = "";
    for(i=0;i<mycount;i++)
    {
        myKeyid = this.myGrid.DataKeys[i].ToString();
      //为模板列(删除)添加事件
      TextBox mytxt = (TextBox)this.myGrid.Items[i].FindControl("你的文本框ID");
      mytxt.Attributes.Add("onclick","window.open('xxx.aspx?id=" + myKeyid + "','','')");

      

  3.   

    给你一段代码:
    <asp:hyperlinkcolumn DataTextField="file_name" DataNavigateUrlField="file_url" DataNavigateUrlFormatString="javascript:var win = window.open('test20.aspx?id={0}',null,'width=500,height=500');" HeaderText="See Details" HeaderStyle-CssClass="HEADERSTYLE" ItemStyle-CssClass="ITEMSTYLEHYPERLINK" />