代码:ScriptManager.RegisterStartupScript(this.Page, this.GetType(), Guid.NewGuid().ToString(), " <script></script>", false);
代码.....
代码.....
其中<script>中嵌套的是一个confirm,怎么才能我点击confirm的确定时,执行页面其余代码,否则不执行
代码.....
代码.....
其中<script>中嵌套的是一个confirm,怎么才能我点击confirm的确定时,执行页面其余代码,否则不执行
解决方案 »
- web2.0项目怎么打包安装?把数据库文件也打进去
- 怎么把从数据库读取到的数据传回界面
- 高手救命!!急死了
- 有asp.net和C#制作过网页的高手么?急
- 多个datalist需要绑定到数据源的问题
- 高难度问题:怎样用二进制数据的'1'和'0'确定datagrid摸板列里的checkbox选中与没选状态?
- DataGrid行的高度是怎樣控制的(vb.net進行web開發)
- 怎么给web自定义控件添加一个属性
- System.Convert.ToString(datetime)的参数怎么写?
- 求高人指点:<ext:button enabled="false" id="btn" >行点击事件,用js设置butoon可用
- 高手进!!
- 答题得分
通常彈出“confirm的确定时”是在處理某事情的情況這樣做。
你何不給它寫個比如:
加載頁面處寫上。。
btn_del.Attributes.Add("onclick", "javascript:return confirm('确定要删除嗎?');");
當你點刪除按鈕時,彈出對話框,若點擊確定,會自動執行下面語句塊的代碼,反則不執行。。
protected void btn_del_Click(object sender, EventArgs e)
{
執行刪除
}
如果用户“确定”继续执行方法,否则取消执行...
我的是:当点击删除按钮时,执行服务器端的click事件,在其对应的方法中我判断用户是否选择了记录,如果没有选择,
则通过RegisterManager注册一个客户端脚本alert('若要删除信息,请至少选择一条信息');
如果选择了
则通过RegisterManager注册一个客户端脚本confirm('删除信息后将不可恢复,确认删除吗?')
<script language="javascript" type="text/javascript">
// <!CDATA[
function CheckFunction()
{
//沒有選擇任何資料
if(1==1)
{
alert("要刪除資料,至少選擇一條信息");
return false;
}
else
{
confirm("你確定要刪除嗎");
}
}
// ]]>
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "edit", "CheckFunction()", true);
}
{
if (3 > 2)
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), Guid.NewGuid().ToString(), "<script>if(confirm('a?'){怎么调用Please()方法})</script>", true);
}
} protected void Please()
{
//做删除操作
}
你拿webservice做伪后台,用js来调webservice的function。
return Confirm("OK?");
protected void btn_Click(object sender, EventArgs e)
{
if (3 > 2)
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), Guid.NewGuid().ToString(), " <script>if(confirm('a?'){"+this.Please()+"}) </script>", true);
}
} protected int Please()
{
//做删除操作
}这种方式就对!
<script language="javascript" type="text/javascript">
function Check()
{
//打个比方,检查是不是小数
var str = form1.txtNumberOnly.value;
var num = str.match(/^\d+(\.\d+)?$/);
if(num != null)
{
alert("格式正確");
return true;
}
else
{
alert("格式不正確");
return false;
}
}
</script>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtNumberOnly" runat="server"></asp:TextBox>
<asp:Button ID="btnSubmit" runat="server" Text="Button" OnClick="btnSubmit_Click" OnClientClick="if(!Check()){return false;};" />
</div>
</form>这样如果不判断错误,则不再执行后台代码。
如果你的if(3>2)比较难写,你可以在if(confirm('a?'){给隐藏控件赋true;})否则赋false,然后在后台取这个隐藏控件的值,是true就继续,false就return;
document.getElementById("<%=txtNumberOnly.ClientID%>")才对
贻笑大方。。
alert('若要删除邮件,请至少选择其中一封!');return false;否则再提示if(confirm("删除邮件后将不可回复,确认继续吗?")){return true}else{return false;}
代码:
function check()
{
var mycheck=document.getElementsByTagName("input");
int total=0;//记录用户选择的个数
for(var i=0;i<mycheck.length;i++)
{
if(mycheck[i].tagName=="checkbox")
{
if(mycheck[i].checked)
{
total++;
}
}
}
if(total>0)
{
return false;
}
else
{
if(confirm("删除邮件后将不可恢复,确认删除吗?"))
{
return true;
}
else
{
return false;
}
}
}
document.getElementsByName("")去取,我上面写的是有很多瑕疵的,比如说,目标页面上有N个form,每个form中又有n个checkbox
这下我的total不就不行了么!我还得过滤...
你现在的问题是如何判断Repeater中有无CheckBox选中的问题...你在后台Button事件中遍历一遍Repeater,看看是否选中,这个在后台还是很好做的,得出Count。
如果Count==0,return;
否则去前台做if(confirm)的动作,这里你可能需要一个隐藏控件。如果Confirm了,你在JS中给隐藏控件赋一个值,如1,否则赋0。这个时候又会回到后台做后续动作,此时你再判断此隐藏控件是1还是0,是0就return,是1继续……
protected void btnCommit_Click(object sender, EventArgs e)
{ //定义Count = 0;略
foreach (GridViewRow myRow in GridView1.Rows)
{
CheckBox myCheckBox = (CheckBox)myRow.Cells[0].FindControl("chkSelect");
if (myCheckBox.Checked)
{
Count++;
}
}
if (Count == 0)
return;
//去前台Confirm.其实就是给HiddenCheck赋值....
if (HieddnCheck.Value == "1")
{
//Do what you wanna do
}
else return;
}
function Check()
{
if(Confirm)
{
document.getElementid("HiddenCheck").Value = 1;
}
else
{
document.getElementid("HiddenCheck").Value = 1;
}
}
随手写的,代码肯定有错,思路就是酱紫的,包对.
不给俺分就真的对不起俺鸟.....
else
{
document.getElementid("HiddenCheck").Value = 0;
}
{
ScriptManager.RegisterStartupScript(this.btnRead, this.GetType(), Guid.NewGuid().ToString(), "<script>alert('要将邮件标记为已读,请至少选择其中一封!')</script>",false);
}
else
{
//设置为已读
ScriptManager.RegisterStartupScript(this.btnRead, this.GetType(), Guid.NewGuid().ToString(), "SetRead()",true);
//我SetRead()方法就一个confirm;如果为true,则设置hiddenfield的值为1 false,hiddenfield.value=0;
//刚开始程序走到这里value为""(程序会把下面的代码执行完毕后才弹出confirm的啊...)
if (this.hfread.Value == "1")
{
try
{
outmailid = outmailid.Substring(0, outmailid.Length - 1);
int flag = mail.SetRead(outmailid);
if (flag > 0)
{
//成功(重新刷新页面)
//this.Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(), "<script>document.location.href='PerMailList.aspx?mailboxid="+MailBoxID+"';</script>");
//ScriptManager.RegisterStartupScript(this.btnRead, this.GetType(), Guid.NewGuid().ToString(), "<script>document.location.href='PerMailList.aspx?mailboxid=" + MailBoxID + "';</script>", false);
GetMailByID();//重新构造repeater中的内容
}
else
{
//失败
}
}
catch (Exception)
{ }
}
else
{
return;
}
}