绑定了gridview,有userID,username,age等等字段。
gridview有一列是专门放button的,点击这个button,会弹出一个窗口,显示的是这条数据的详细信息。点击这个button,是调用js函数,但是这个js函数是有2个参数的。
1、gridview绑定的值作为参数传进去。
2、页面上的一个TextBox控件的Text值传进去。
请问怎么做?OnClientClick怎么写?function GetDetail(userID, sss)
{
}                    <asp:TemplateField HeaderText="查看详情">
                        <ItemTemplate>
                            <asp:Button ID="Button_Detail" runat="server" Text="查看详情" 
                            OnClientClick = '这里怎么写' />
                        </ItemTemplate>
                    </asp:TemplateField>谢谢!

解决方案 »

  1.   

     OnClientClick = 'GetDetail(<%Eval("UserId")%>,"<%Eval("xxxx")%>")' />
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>    <script type="text/javascript" src="http://jqueryui.com/latest/jquery-1.3.2.js"> </script>    <script>
            function checkAll(checked) {
                var tb = $('#<%=gv.ClientID %>');
                $('#<%=gv.ClientID %> input:checkbox').attr("checked", checked);
                if (checked) {
                    $('#<%=gv.ClientID %> tr').css("background", "red");
                }
                else {
                    $('#<%=gv.ClientID %> tr').css("background", "white");
                }
            }
            $(function() {
                $('#<%=gv.ClientID %> tr').each(function(i) {
                    if (i != 0) {
                        $(this).mouseover(function(i) {
                            $(this).css("background", "red");
                        }).mouseout(function(i) {
                            $(this).css("background", "white");
                        });
                    }
                });
            });
        </script></head>
    <body>
        <form id="form1" runat="server">
        <div>
            <span style="font-size: 12px; color: #9399A7;">选择:</span> <a id="cbxall" href="###"
                class="font" onclick='checkAll(true);'>全部</a> -<a id="cbxnone" href="###" class="font"
                    onclick='checkAll(false);'>无</a>
        </div>
        <asp:GridView ID="gv" runat="server">
            <Columns>
                <asp:TemplateField>
                    <HeaderTemplate>
                        <asp:CheckBox ID="CheckBox2" onclick='checkAll(this.checked);' runat="server" />
                        全选
                    </HeaderTemplate>
                    <ItemTemplate>
                        <asp:CheckBox ID="CheckBox1" runat="server" />
                    </ItemTemplate>
                    <ItemStyle Width="30px" />
                </asp:TemplateField>
            </Columns>
            <HeaderStyle Font-Size="13px" HorizontalAlign="Left" />
        </asp:GridView>
        </form>
    </body>
    </html>C# code
    private DataTable GetDataTable()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add(new DataColumn("Name", typeof(String)));
            DataRow dr;
            for (int i = 0; i < 10; i++)
            {
                dr = dt.NewRow();
                dr[0] = i;
                dt.Rows.Add(dr);
            }
            return dt;
        }    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                gv.DataSource = GetDataTable();
                gv.DataBind();
            }
         }
      

  3.   

    OnClientClick="A(<%Eval("Id")%>)"
      

  4.   

    这样似乎更直接:DataTable dt = new DataTable();
    dt.Columns.Add("中文");
    dt.Columns.Add("englsih");
    dt.Columns.Add("id", typeof(string));
    dt.Rows.Add("行不行啊", "sdasfsa", "'12121251");
    dt.Rows.Add("行不行啊", "sdasfsa", "12121251");
    dt.Rows.Add("行不行啊", "sdasfsa", "121251251");
    dt.Rows.Add("行不行啊", "sdasfsa", "121251251251");
    dt.Rows.Add("行不行啊", "sdasfsa", "12251251");
    GridView1.DataSource = dt;
    GridView1.DataBind();for (int i = 0; i < GridView1.Rows.Count; i++)
    {
        Button bt = GridView1.Rows[i].FindControl("Button_Detail") as Button;
        bt.Attributes.Add("onclick", "GetDetail('" + dt.Rows[i]["id"] + "','"+TextBox1.Text+"')");
    }
      

  5.   

    我如果要将一个asp.net空间的值作为参数怎么写?比如一个TextBox控件TB_Name,将TB_Name.Text作为参数传进去怎么写?
      

  6.   

    在gridview的RowDataBound里findcontrol查询控件添加事件