3

我将此代码用于删除按钮以获取确认消息:

<asp:Button runat="server" ID="btnDelete" 
 OnClick="btnDelete_Click" 
 OnClientClick="return confirm('Do you want to delete the record ? ');" />

这是在服务器端添加确认客户端脚本的方法:

btnDelete.Attributes.Add("onclick", 
    "return confirm('Do you want to delete the record ? ');")

但是我在调​​试时遇到(预期类型)错误有人可以帮忙吗?谢谢

4

3 回答 3

2

如果您 OnClientClick="return confirm('Do you want to delete the record ? ');" 在标记中指定,则无需再次添加属性。这可能是原因。

从服务器注释掉

//btnDelete.Attributes.Add("onclick", 
    "return confirm('Do you want to delete the record ? ');")
于 2012-11-19T12:15:11.140 回答
0

您拥有的客户端标记是正确的并且必须有效。

如果要从服务器端生成 JavaScript 代码,请删除相关标记 OnClientClick。您正在复制客户端事件处理。

注意:不要考虑“onclick”属性,而是考虑在页面加载时使用附加事件(即:使用 jquery)。

例子:

$(".btn-delete").click(function() { /*do something here*/ });
于 2012-11-19T12:28:36.910 回答
0

protected void GridView1_RowDataBound(对象发送者,GridViewRowEventArgs e)

    {
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                foreach (Button button in e.Row.Cells[12].Controls.OfType<Button>())

                {
                    if (button.CommandName == "Delete")
                    {
                        button.Attributes["onclick"] = "if(!confirm('Do you want to delete')){return false;};";
                    }

                }
于 2016-03-21T10:00:46.827 回答