关注一下
e.Row.Attributes.Add("onclick", 所求代码);个人认为这种方式只是触发一个客户端事件吧

解决方案 »

  1.   

    我想实现的功能:单击gridview的某行,从而引发某个服务器事件,我也知道要写的代码是JS,那请问有没有方法通过JS触发服务器事件?
      

  2.   

    http://aspdognet.com/document/2007/08/5727081.html
      

  3.   

    可以先定义一个服务器按钮,然后隐藏(使用style="display:none"),当点击gridview某行时执行js脚本,然后由js脚本执行此按钮的服务器事件:
    document.getElementById("BindBtn").click();//此方法就是你要求的,JS触发服务器事件
    方法有些笨,但是完全可以实现,我也是解决别人问题时试过,如果哪位大虾有更好的方法,我也想学习一下
      

  4.   

    #region实现选中行
    前台GV中添加选择列
         <SelectedRowStyle BackColor="AliceBlue" ForeColor="Gray" />
         <asp:CommandField ShowSelectButton="True"/>
    后台选择事件中
    protected void  GridViewRegiment_SelectedIndexChanged(object sender, EventArgs e)
    {
            GridViewRow row = GridViewRegiment.SelectedRow;
            int RegimentID = Convert.ToInt32(row.Cells[1].Text);
            调用你的事件~~~~~~~~~~~~~ 
            
    }
    #endregion
      

  5.   

    恩,elvis_gao()的方法确实能够实现我要求的功能,但是感觉稍微有点...还需要设置一个BUTTON,有没有能直接调用CS文件里的方法的?
      

  6.   

    charry0110() 
    我就是不想要那个选择按钮才设置了ONCLICK事件...要不直接就写在_SelectedIndexChanged事件里了...
      

  7.   

    那应该怎么引发SELECTEDINDEXCHANGED事件啊?
    e.Row.Attributes.Add("onclick", "document.getElementById(\"GridView1\").SelectedIndexChanged()");我照着写了个这样的,为什么不能引发事件啊?
      

  8.   

    真是奇怪了
    e.Row.Attributes.Add("onclick", "__doPostBack('Gridview1','')");
    e.Row.Attributes.Add("onclick","document.all('GridView1').SelectedIndexChanged()")
    都不能引发SELECTEDINDEXCHANGED事件?