没有选择复选框时,弹出对话框“请至少选择一条”,这个没问题,但是有复选框被选中时再点击删除,弹出确认对话框“确定要删除所选内容吗?”,下面的确认对话框没有作用,总是在删除后才弹出来,请教大家应该怎么做呢?
protected void btnDel_Click(object sender, EventArgs e)
{
int pgNum = this.pgrUser.CurrentPageIndex;
int m = 0;
for (int i = 0; i < gvAchQust.Rows.Count; i++)
{
CheckBox ckb = (CheckBox)this.gvAchQust.Rows[i].Cells[0].FindControl("ck");
if (ckb.Checked)
{
btnDel.Page.ClientScript.RegisterStartupScript(this.GetType(), "PleaseCheck", "return confirm('确定删除所选的已归档咨询问题吗')", true);
string id = this.gvAchQust.DataKeys[i].Value.ToString();
qus.DeleteQuestion(Convert.ToInt32(id));
}
else
m++;
if (m == gvAchQust.Rows.Count)
btnDel.Page.ClientScript.RegisterStartupScript(this.GetType(), "PleaseCheck", "alert('必须选择至少一条咨询问题')", true);
BindGv(pgNum);
}
qus是BLL层的方法
protected void btnDel_Click(object sender, EventArgs e)
{
int pgNum = this.pgrUser.CurrentPageIndex;
int m = 0;
for (int i = 0; i < gvAchQust.Rows.Count; i++)
{
CheckBox ckb = (CheckBox)this.gvAchQust.Rows[i].Cells[0].FindControl("ck");
if (ckb.Checked)
{
btnDel.Page.ClientScript.RegisterStartupScript(this.GetType(), "PleaseCheck", "return confirm('确定删除所选的已归档咨询问题吗')", true);
string id = this.gvAchQust.DataKeys[i].Value.ToString();
qus.DeleteQuestion(Convert.ToInt32(id));
}
else
m++;
if (m == gvAchQust.Rows.Count)
btnDel.Page.ClientScript.RegisterStartupScript(this.GetType(), "PleaseCheck", "alert('必须选择至少一条咨询问题')", true);
BindGv(pgNum);
}
qus是BLL层的方法
还可以设置下onclientclick="javascript:return confirm('确定删除所选的已归档咨询问题吗')"
只有在当前执行完成页面返回以后才会注册执行
如果想先提示再删除,估计得在客户端进行提示判断的你对b/s方式的执行方式还不清楚的
或 ClientScript.RegisterStartupScript(this.GetType(), "PleaseCheck", "if(confirm('确定删除所选的已归档咨询问题吗'))document.getElementById('hf').value='1';else
document.getElementById('hf').value='0;",true);
if(hf.value.Equals("1"))
{}
较难控制