CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

为什么验证控件限制不了button按钮(点击此按钮弹出确认对话框)了呢?

楼主wudebin(苦来我吞酒来碗干)2005-05-10 14:30:19 在 .NET技术 / C# 提问

部分程序如下:  
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
    {      
          buttonOk.Attributes.Add("onclick",   "return   confirm('是否生成缴费单?');");  
    }  
   
  private   void   buttonOk_Click(object   sender,   System.EventArgs   e)  
    {  
        textbox1.text="abc"   ;  
    }  
  按道理讲,页面中存在验证控件,如果不符合要求的话,点击   buttonOk   按钮   页面应该没反应,可现在怎么点击后先是弹出确认按钮,然后就执行   textbox1.text="abc"   了呢?虽然验证控件也进行了提示。  
  如果不为   buttonOk   按钮添加   弹出窗口功能(即不写Page_Load里的代码),验证控件起作用,点击按钮就不会执行textbox1.text="abc"   。 问题点数:20、回复次数:10Top

1 楼wudebin(苦来我吞酒来碗干)回复于 2005-05-10 15:16:35 得分 0

怎么就没人管了呢,天哪,help!Top

2 楼fengfangfang()回复于 2005-05-10 15:30:15 得分 0

看看生成的源文件,估计是有冲突Top

3 楼ffjing(猪头不卖)回复于 2005-05-10 15:35:46 得分 0

也许验证控件的返回值被你的confirm的返回值覆盖了  
  你试一下,如果confirm时你选择取消,验证控件应该就有反应了Top

4 楼dutguoyi(新鲜鱼排)回复于 2005-05-10 15:37:21 得分 10

if(Page.IsValid)  
  {  
  }Top

5 楼ffjing(猪头不卖)回复于 2005-05-10 15:45:48 得分 0

测试了一下,比较奇怪  
  应该是先执行了confirm,再进行验证,验证出错消息出来了,而后台代码仍然被执行了Top

6 楼ffjing(猪头不卖)回复于 2005-05-10 15:48:30 得分 5

在服务器端验证才需要写  
  if(Page.IsValid)  
  {  
  }  
  而现在一般浏览器都支持dhtml,都是客户端验证的,为什么验证不通过仍然执行了后台代码!Top

7 楼wudebin(苦来我吞酒来碗干)回复于 2005-05-10 16:14:54 得分 0

ffjing(猪头不卖)       第二句说的对啊,页面中的控件是进行验证了,可click事件的代码也被执行了,这样验证就没意义了。Top

8 楼quzw(quzw)回复于 2005-05-10 17:01:43 得分 0

有意思,关注中……Top

9 楼bladebengbu(清风飘雨)回复于 2005-05-10 17:22:48 得分 5

WebForm的啊。。使用这种方式看看  
  1、Button1.Attributes["onClick"]="javascript:return   confirm('Sure?');";  
   
  2、Button1.Attributes.Add("onClick",   "javascript:return   a();");  
  在页面上写  
  <script   language="javascript">  
  function   a()  
  {  
        if   ((confirm('是否存盘?')==true)  
        {  
              if(客户端判断条件不符合)  
                      {alert("数据不对,请重新输入");}  
                      return   false;  
              else  
                      {return   true;}  
          }  
          else  
          {  
            return   false;  
            }  
  }  
  </script>  
   
  Top

10 楼lhcoolhacker(hugh-lin)回复于 2005-05-10 17:43:27 得分 0

return   confirm('是否生成缴费单?')改为:if(!confirm('是否生成缴费单?'))   return   false;  
  点击是的时候提交,否的时候不提交Top

相关问题

  • 点击button控件之后怎样弹出一个对话框?
  • 不用commondialog控件如何弹出打开对话框?
  • 。。。如何阻止Adodc控件弹出错误提示对话框?。。。
  • 对话框中加入ACTIVEX控件以后,对话框就不能DOMODAL弹出的问题。
  • 对话框里Picture控件显示的图片被弹出的对话框挡住后不能恢复
  • 弹出对话框
  • 对话框弹出
  • 弹出对话框
  • ........弹出对话框
  • *********对话框控件**********

关键词

  • 验证
  • 控件
  • 执行
  • 代码
  • 页面
  • 按钮
  • 弹出
  • buttonok
  • 点击
  • confirm

得分解答快速导航

  • 帖主:wudebin
  • dutguoyi
  • ffjing
  • bladebengbu

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo