如何从datagridview asp重定向url

时间:2015-10-05 00:45:02

标签: javascript c# asp.net

这是我在asp gridview上的rowdatabound事件的代码

 protected void jobGridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            (e.Row.FindControl("TitleLink") as LinkButton).Attributes.Add("onClick", "RedirectPage('" + jobListTable.Rows[e.Row.RowIndex + (jobGridView.PageIndex * 10)]["job_id"].ToString() + "')");

        }
    }

我的java脚本代码

<script type="text/javascript">
    function RedirectPage(ID) {

        window.location = "Login.aspx";
    }
</script>

但是,我的代码不起作用,有人可以告诉我原因吗?

1 个答案:

答案 0 :(得分:0)

好吧,LinkButton是一个服务器控件。如果您要绑定到javascript函数,而不是onClick,则应该定位onClientClick。另外,为了防止回发,你应该从javascript函数return false

查找下面的代码(为了简单起见我已经删除了javascript函数中的参数;您可以根据需要应用它)

C#代码背后(注意onClientClick部分)

    protected void jobGridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            (e.Row.FindControl("TitleLink") as LinkButton).OnClientClick = "javascript:return RedirectPage();";
        }
    }

javascript函数(注意return false部分)

<script type="text/javascript">
    function RedirectPage() {
        window.location = 'Login.aspx';
        return false;
    }
</script>