【问题标题】:Do not show confirm messagebox if gridview checkbox is not checked如果未选中 gridview 复选框,则不显示确认消息框
【发布时间】:2011-09-08 20:37:38
【问题描述】:

我有 gridview,其中包含数据列和“应用”下方的按钮以执行某些操作。

Gridview 中的一列是复选框列。当您选择复选框并单击应用时,会弹出一条确认消息,询问“您确定吗?”可选择“是”和“否”。

但是如果没有选中复选框,我想在执行操作之前向用户显示一个弹出窗口以选择一个复选框,并且不显示确认消息弹出窗口。

我现在所拥有的是,如果未选中任何复选框,则会首先弹出确认消息,如果我按“是”,则会弹出一条警报消息以选择至少一个复选框。如果我按取消没有弹出显示。

这是我的代码:

protected void Page_Load(object sender, EventArgs e)
    {
 if (!IsPostBack)
      {
ApplyAction_Button.Attributes.Add("onclick", "return confirm('Are you sure?');");
      }
    }


 protected void ApplyAction_Button_Click(object sender, EventArgs e)
    {
  // Gets the selected checkboxes in the gridview 
  ArrayList selectedMachines = new ArrayList();
  GetSelectedMachineIds(selectedMachines);

             if (selectedMachines.Count == 0)
             {
                 Page.ClientScript.RegisterStartupScript(this.GetType(), "Alert", "<script>alert('Please select a machine for the action to be applied');</script>");

                 return;
             }
    // Action to be applied
    }

我试图避免使用回发。

另一个问题:

asp.net中是否有服务器端确认消息框?

任何帮助将不胜感激。谢谢

【问题讨论】:

标签: c# javascript asp.net gridview confirm


【解决方案1】:

您可以将按钮设置为 false,一旦选中复选框,您就可以显示按钮。 另一种方法是使用 javascript 检查复选框是否被选中

后面的代码

ApplyAction_Button.Attributes.Add("onclick", "ShowConfirm();");

javascript

function ShowConfirm()
{
  //check if checkbox is checked if is checked then display confirm message else display alert message
if( "assumed checkbox is checked"){
return confirm("message here");
}
else{
alert("message here");
}
}

【讨论】:

  • 是的,这可能有效.. 但我需要知道如何检查是否在 gridview 中选中了任何复选框的 javascript 代码。我拥有的代码是一个服务器端代码,不能与上面的 java 脚本一起使用
【解决方案2】:

【讨论】:

  • 我尝试了第一个链接,但那里的 javascript 不起作用.. 它没有检查 gridview 中的复选框
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-20
  • 2015-07-17
  • 1970-01-01
相关资源
最近更新 更多