c#,web应用程序,如何弹出对话框让用户选择"是"或"不是"? 最近在用C#写一个web应用程序,有一个地方要弹出一个询问用户是或不是的对话框,然后等待用户响应,根据用户的选择对执行对应的代码.请问这段程序该怎么写?又或者,c#和javascript可不可以互操作?请dx,xd们帮忙啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看看这个http://dev.csdn.net/article/68/68404.shtm javascript网上找本手册看看吧 有一个第三方控件 WebMessageBox 可以满足你 可以用window.confirm(),但是想根据用户点击不同的按钮走不同的逻辑很难.button.Attributes.Add("onClick","return confirm('ok')")这种方法也只能保证用户点了确定执行代码,点了取消什么也不做. MessageBox.show("aa","bb",MessageBoxButton.YesNO) 这要用到JS代码,多看看JS就会了。 Response.Write("<script language=javascript>var rtn=window.confirm('是否删除记录');if(!rtn)window.alert('你选择了取消');else window.alert('你选择了确定');</script>"); .net怎么取到javascript的confirm函数的返回值?我看,3gold的回复中的方法应该可行,不过还没试 不过,zhanqiangz的回复好像也比较可行, b.Attributes.Add("onclick","javascript:return(confirm('Are u sure'))");可以取到返回值 同意 prochf(love bcb)Response.Write("<script language=javascript>var rtn=window.confirm('是否删除记录');if(!rtn)window.alert('你选择了取消');else window.alert('你选择了确定');</script>"); 用JS写,论坛里多着呢,<a href="javascript:return window.confirm('adf')">ddd</a> 昨天下了WebMessageBox这个控件,能达到我的要求,可是也不是很方便难道web程,用C#弹出一个定制的MessageBox真的这么难吗? 刚才在msdn2005里看到了一篇working with client-side scrip看起来好像有帮助,不过都是e文,正在研读当中 要看你在什么地方用到这个功能.如果是在按钮或控件上用,那简单的Button1.Attributes.Add("onclick","javascript:return confirm('Are you sure?');");就可以达到你的要求.confirm弹出的对话框自带2个按钮"ok","cancel".如果是事件触发,就比较麻烦了.说具体点. 搂主明显受.net迷惑了直接像 asp,jsp,php一样 confirm可以Page_Load里面加Button1.Attributes.Add("onclick","javascript:return confirm('Are you sure?');");也可以 那好,我把问题说具体点(我用的是c#):当点击aspx页面上的一个按钮后,要求弹出一个三个按钮(Yes,No,Cancel)的对话框,然后根据用户的选择执行不同的代码,我写一段伪代码吧:void button_click(){ string result; ret_val = message_box(message, title, button_yes_no_cancel); switch(ret_val) { case yes: result = "yes"; break; case no: result = "no"; break; case cancel: result = ""; } save_result(result); return;}如以上代码,关键就在这个message_box这里,因为用c#做windows程序时,可以用MessageBox.Show这个功能,但是在web应用程序中是不能用的.网上找了很久,只有上面 wjcking 兄弟说的WebMessageBox算是成功的,不过,由于是已经编译好的dll,所以用起来比较不放心哪位大侠可以有源码提供.ps:javascript的confirm太简单了,达不到我的要求 自己写一个啊,又不是很麻烦写好之后用window.open()打开那个页面就好了 if (MessageBox.Show("nihao ","ceshi",MessageBoxButtons.YesNo)==DialogResult.Yes)do something;这种方法就可以的。 二楼的哥哥,那个挺好,但是有个问题 ViewStateBag 是什么类,他在那个命名空间下 stty,在web应用程序中,那是不行的,那样的写法只能用在windows应用程序中用window.open()的话,如果是在maxthon等多tab浏览器中,也是不行的.msdn里面也找了文章,也是做成web控件,但是这些控件和以上的程序逻辑顺序不一样真是头大啊 有一个很麻烦的思想.......先隐藏一个DIV,一点就出来(出来的时候把整个页面消失或者不给点),里面放二个是,不是的字。点击再进行操作 这个DIV的内容可以随便你怎么搞了,可以用CSS搞成很象对话框的样子。不过一个页面还好搞,一个系统都要就要复杂很多。还不如用confirm......稳定些。 觉得你肯定要使用另一个页面,或者做一个通用的确认控件来实现了.因为肯定需要一些其他表单数据才能进行流程.这些数据需要在保存在页面上的.我以前遇到这种情况,大多数找方法绕过去.想直接使用JS好像不太显示,即便实现了代价也很大,通用性也会受到限制.举个例子:你的需求就像常用的删除按钮一样,删除时需要用户确认,常用的做法都是使用confirm.这段js都是直接放在页面上的.如果你想在处理逻辑过程当中使用的话,confirm就不行了. 如果可以的话,最好发页面和代码过来看看.看看能不能使用其他方法.kirc(at)yeah.net 三个按钮:MessageBox.Show("words","caution",MessageBoxButtons.YesNoCancel)//是,否,取消或者MessageBox.Show("words","caution",MessageBoxButtons.AbortRetryIgnore)//终止,重试,忽略 网上有很多收费的webmessagebox的web控件,看来这个问题做web控件是最好的方法了多谢大家回贴 DevExpress应用的疑惑(GridControl添加按钮列问题) C#mouse down事件无法触发?? 类似画图板的文字编辑 查询数据导致网速变慢 把string转为char。或有什么可以把这个unicode:\u7684\u8EAB\u4EFD 转为汉字? 请问有谁知道,在C#中当窗口状态从Maximum变成Normal时候会调用那个函数? 高手帮忙看下循环语句,急急急 问题一直没有解决啊,请高手帮忙 字段的值的表达式怎么写. C# wpf 代码文件夹路径怎么获取—— ‘错误枚举数据服务器’ 用多维数组作为DataGrid的数据源,如何解决?
http://dev.csdn.net/article/68/68404.shtm
网上找本手册看看吧
button.Attributes.Add("onClick","return confirm('ok')")
这种方法也只能保证用户点了确定执行代码,点了取消什么也不做.
Response.Write("<script language=javascript>var rtn=window.confirm('是否删除记录');if(!rtn)window.alert('你选择了取消');else window.alert('你选择了确定');</script>");
我看,3gold的回复中的方法应该可行,不过还没试
Response.Write("<script language=javascript>var rtn=window.confirm('是否删除记录');if(!rtn)window.alert('你选择了取消');else window.alert('你选择了确定');</script>");
<a href="javascript:return window.confirm('adf')">ddd</a>
难道web程,用C#弹出一个定制的MessageBox真的这么难吗?
如果是在按钮或控件上用,那简单的
Button1.Attributes.Add("onclick","javascript:return confirm('Are you sure?');");
就可以达到你的要求.confirm弹出的对话框自带2个按钮"ok","cancel".
如果是事件触发,就比较麻烦了.
说具体点.
直接像 asp,jsp,php一样 confirm可以Page_Load里面加Button1.Attributes.Add("onclick","javascript:return confirm('Are you sure?');");也可以
当点击aspx页面上的一个按钮后,要求弹出一个三个按钮(Yes,No,Cancel)的对话框,然后根据用户的选择执行不同的代码,我写一段伪代码吧:
void button_click()
{
string result;
ret_val = message_box(message, title, button_yes_no_cancel);
switch(ret_val)
{
case yes:
result = "yes";
break;
case no:
result = "no";
break;
case cancel:
result = "";
}
save_result(result);
return;
}如以上代码,关键就在这个message_box这里,因为用c#做windows程序时,可以用MessageBox.Show这个功能,但是在web应用程序中是不能用的.网上找了很久,只有上面 wjcking 兄弟说的WebMessageBox算是成功的,不过,由于是已经编译好的dll,所以用起来比较不放心哪位大侠可以有源码提供.ps:javascript的confirm太简单了,达不到我的要求
写好之后用window.open()打开那个页面就好了
do something;
这种方法就可以的。
因为肯定需要一些其他表单数据才能进行流程.这些数据需要在保存在页面上的.我以前遇到这种情况,大多数找方法绕过去.
想直接使用JS好像不太显示,即便实现了代价也很大,通用性也会受到限制.举个例子:你的需求就像常用的删除按钮一样,删除时需要用户确认,常用的做法都是使用confirm.
这段js都是直接放在页面上的.如果你想在处理逻辑过程当中使用的话,confirm就不行了.
kirc(at)yeah.net
或者MessageBox.Show("words","caution",MessageBoxButtons.AbortRetryIgnore)//终止,重试,忽略