JavaScript确认不起作用?

时间:2009-11-11 14:27:17

标签: c# asp.net javascript confirm

我使用girdview。并且为了删除我在每一行中使用LinkBut​​ton。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
        ((LinkButton)e.Row.Cells[12].Controls[0]).Attributes.Add("onClick", 
            "return false;"
        );
    }
}

现在,我希望点击Link Button时不会发生任何事情,因为OnClick会返回false。正确?

但是

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     if(e.CommandName=="SIL")
     {
         String _id = GridView1.DataKeys[Int32.Parse(e.CommandArgument.ToString())].Values["id"].ToString();

         dsodeme_onkayitTableAdapters.odeme_onkayitTableAdapter _todeme = new dsodeme_onkayitTableAdapters.odeme_onkayitTableAdapter();
         _todeme.DeleteQueryID(_id);

         Response.Redirect("musteri_onkayit_odeme_al.aspx?username=" + lbUserName.Text);
     }
}
正在调用

RowCommand正在运行并删除记录。

请帮我找到问题所在。我使用Vista Home Premium和IE8。这是问题吗?

4 个答案:

答案 0 :(得分:1)

而不是:

((LinkButton)e.Row.Cells[12].Controls[0]).Attributes.Add("onClick", 
            "return false;"
        );

尝试:

((LinkButton)e.Row.Cells[12].Controls[0]).OnClientClick = "return false;";

答案 1 :(得分:1)

好的,我这样解决了;

attribute.add(“onClick”,“if(!confirm('你确定吗?')”event.returnValue = false;“);

它的作品。 感谢。

答案 2 :(得分:0)

我认为Jan必须要做的事情,你尝试添加onClick的实际链接是不是'cell 12 control 0'?

您应该显示输出,我们将能够找出错误。

答案 3 :(得分:0)

我知道这可能听起来不像你想要的答案但如果你知道控件不允许删除,为什么不让它不可见,即隐藏控件。

最终,这将实现您的目标。