.net 验证控件和javaScript的冲突问题。

电脑版微信多开,最详细教程没有之一 首先桌面任意的位置右键新建文本文档输入如下代码: TASKKILL /F/IM WECHAT.EXE start " " "D:\Program Files (x86)\Tencent\WeChat\WeChat.exe" start " " "D:\Program Files (x86)\Tencent\WeChat\WeChat.exe" ... 阅读详情
在做东西的时候偶尔同时用到javascript的事件和.net的验证控件,具体细节如下:
<head runat="server">
    
<title>Untitled Page</title>
    
<script language="javascript" type="text/javascript">
    
var IsDetailsModifed = true
    
function SubmitDetailModified()
        
{
            
var retvalue;
            
if (IsDetailsModifed == true)
            
{
               retvalue 
= confirm("Do you want to save?);
            }

            
else
            
{
            alert(
"No need to save because of no field modified.");
            retvalue 
= false
            }

            
return retvalue;
            
        }

    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
    
<asp:TextBox ID="txtTest" runat="server" Width="80px"></asp:TextBox>
    
<asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" ControlToValidate="txtTest"
            ErrorMessage
="Test must be Numeric"  ValidationExpression="^[0-9]{1,28}.?[0-9]{0,4}$">*</asp:RegularExpressionValidator>
        
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return SubmitDetailModified()" />
        
<asp:ValidationSummary ID="ValidationSummary1" runat="server" ShowMessageBox="true" ShowSummary="false" />
    
</div>
    
</form>
</body>

上面的意图是,在点击按钮的时候弹出一个确认框,如果选择是则继续回传,否则阻止回传。在回传过程中如果某个字段的验证不通过,ValidationSummary 应该弹出消息框来阻止该回传.
但是事与愿违,当我单击按钮的时候,如果选择‘否’,阻止回传,正常。
但当我选择‘是’的时候,有两种情况:
1. 所有字段的验证都通过,然后点击‘是’,页面继续回传,一切正常。
2. 当有字段的验证不通过的时候,点击‘是’,验证消息不会弹出来,而且页面会继续回传,导致操作数据不正确。
为什么验证消息框会弹不出来呢?
后来,了解到.net验证控件的机制就是通过javascript来返回true或false来控制页面是否回传的。在上面的代码中,如果选择‘是’,直接在按钮的点击事件中返回true,页面当然要回传了。后来发现验证控件是通过给event.returnValue=true/false来实现阻止与否的。于是我改写了我的代码如下:
<head runat="server">
    
<title>Untitled Page</title>
    
<script language="javascript" type="text/javascript">
    
var IsDetailsModifed = true
    
function SubmitDetailModified()
        
{
            
var retvalue;
            
if (IsDetailsModifed == true)
            
{
               retvalue 
= confirm("Do you want to save ?");
            }

            
else
            
{
            alert(
"No need to save because of no field modified.");
            retvalue 
= false
            }

            
if (retvalue == false)
            
{
              event.returnValue 
= retvalue; 
            }

            
        }

    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
    
<asp:TextBox ID="txtTest" runat="server" Width="80px"></asp:TextBox>
    
<asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" ControlToValidate="txtTest"
            ErrorMessage
="Test must be Numeric"  ValidationExpression="^[0-9]{1,28}.?[0-9]{0,4}$">*</asp:RegularExpressionValidator>
        
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="SubmitDetailModified()" />
        
<asp:ValidationSummary ID="ValidationSummary1" runat="server" ShowMessageBox="true" ShowSummary="false" />
    
</div>
    
</form>
</body>

如果我选择'是',我什么都不做,那就是默认的继续回传,但是如果有验证不通过的字段,验证控件通过event.returnValue=false来阻止页面继续回传,这样页面就会跳出验证不通过的对话框。如果我选择‘否’,我也用event.returnValue=false的方法来阻止页面回传。这样的话,就达到了最初的目的。

总结:
在使用.net的验证控件的时候,不要再事件中直接return true or false,而是通过event.returnValue=true/false来实现页面的回传阻止。
论文翻译:arxiv-2023 Do-Not-Answer: A Dataset for Evaluating Safeguards in LLMs 随着大型语言模型(LLMs)的快速发展,出现了新的、难以预测的有害能力。这要求开发者能够通过评估“危险能力”来识别风险,以便负责任地部署LLMs。在这项工作中,我们收集了第一个开源数据集,用于评估LLMs中的安全保障,并以低成本部署更安全的开源LLMs。我们的数据集经过策划和筛选,只包含负责任的语言模型不应遵循的指令。我们注释并评估了六个流行的LLMs对这些指令的响应。基于我们的注释,我们继续训练了几个类似BERT的分类器,并发现这些小型分类器在自动安全评估上能够取得与GPT-4相当的成果。 阅读详情

相关推荐

告别Quartus II的漫长等待:用VSCode+iverilog+GTKWave搭建你的轻量级Verilog仿真环境(2024保姆级教程)

本文详细介绍了如何利用VSCode、iverilog和GTKWave构建高效的Verilog/SystemVerilog开发环境,替代传统的Quartus II和ModelSim工具。通过2024年最新的保姆级教程,帮助开发者实现秒级启动、低资源消耗的轻量级仿真环境,显著提升数字电路设计的开发效率和调试体验。

weixin_33690963的博客 561

ScriptManager作用及基本控件错误的解决方法

ASP.NET AJAX 组成部分 1.核心AJAX类型系统 2.网络协议层(networking stack) 3.组建模型 4.扩展基类(extender) 5.Asp.net 集成的服务端功能(ScriptManager,UpdatePanel,Time 控件) —.对基本服务端功能控件的使用 ScriptManager: 作用:处理页面上所有组建以及页面局部更新,生成相关...

weixin_33874713的博客 329

匈牙利算法解决指派问题清晰流程

匈牙利算法解决指派问题清晰流程 百度词条上,指派问题(Assignment problem)是这么定义的:在满足特定指派要求条件下,使指派方案总体效果最佳。如:有若干项工作需要分配给若干人(或部门)来完成;有若干项合同需要选择若干个投标者来承包:有若干班级需要安排在若干教室里上课等。   一、做减法(归约): 行归约:每行元素减去该行最小元素。 列归约:每行元素减去该行最小元素。

siss0siss的博客 6万+

.net 验证控件和javaScript的冲突问题

在做东西的时候偶尔同时用到javascript的事件和.net的验证控件,具体细节如下:&lt;head runat="server"&gt;    &lt;title&gt;Untitled Page&lt;/title&gt;    &lt;script language="javascript" type="text/javascript"&gt;    var IsDetail

weixin_33836223的博客 148

CST电子枪仿真实战:从零搭建粒子追踪模型到磁场聚焦优化

本文提供了一份CST电子枪仿真实战指南,详细讲解了从零开始搭建粒子追踪模型的全过程。内容涵盖项目初始化、Track Solver求解器基础、几何建模、粒子源定义,并重点介绍了如何通过引入和优化静磁场(如聚焦线圈配置)来实现电子束的聚焦,帮助工程师高效预测和优化束流品质。

game4的博客 336

Windows 11 安装 JDK 11:下载、安装、配置环境变量、验证

本文详细介绍了在 Windows 11 系统中安装 JDK 11 的完整流程,包括从 Oracle 官网下载压缩包、解压到自定义目录、配置 JAVA_HOME 与 Path 环境变量,并验证安装是否成功。文章还包含一个专为 JDK 11 新特性设计的测试程序,涵盖 Lambda 表达式 var 语法、HTTP 客户端 API、字符串增强方法等,帮助读者确认安装版本正确无误,适合初学者和需要多版本 JDK 共存的开发者参考。

寒水馨 · 轻量级技术文档 · hanshuixin.org 2781

onClientClick=''return confirm与验证控件冲突问题

比如当你在一个页面里放一个验证控件,有一个按钮,按钮里写有onClientClick=return confirm(确实要删除吗?) ,验证控件失败的情况下当点击按钮时,一般人想要的效果是先验证失败,或者点了确实要删除 的"是"以后再提示验证失败,但 事实不会这样,他会提示"确实要删除吗"?如果你点"是"的话,他是不会验证的了,直接提交到后台去.......这样验证控件就失去了它的

VS2008+LINQ+JAVASCRIPT 2185

YOLOv8与UNetV2融合:一种面向目标检测与图像分割的混合方法【附核心代码】

我们提出了一种基于YOLOv8和UNetV2相结合的混合架构。该架构利用YOLOv8作为主干进行目标检测,同时在YOLOv8的特征提取过程中,引入UNetV2来进行图像分割任务的增强。在该架构中,YOLOv8负责大范围目标检测和位置预测,而UNetV2则在检测网络的特征图基础上,通过其高效的上下文信息提取和细节恢复能力,进一步优化分割任务。在本文中,我们提出了一种改进YOLOv8的方法,通过引入图像分割网络UNetV2来提高图像分割检测性能。

一键难忘的博客 3525

验证控件与Button的OnClientClick事件

验证控件与Button的OnClientClick事件(转) 一、事件   这是一个长期被我忽略或者是没有发现的问题,问题是这样的:   在一个页面中,当有验证控件的时候,当Button控件触发OnClientClick事件,并且这个事件会返回true和false的时候,验证控件就会失效,不起作用了。具体描述如下:   .Net页面如下: <formid="form1"r...

weixin_34367845的博客 131

lammps教程:官方自带eam_database程序拟合EAM势方法介绍

使用lammps模拟金属体系,最常用的势函数为eam、meam势。 对于大多数金属或者合金来说,可以从网上下载相对应的eam或meam势力场文件。 而对于一些新的合金材料,可能就找不到相对应的力场文件。 解决的方法有两种,一是采用混合势(pair_style hybrid),第二种方法是自己拟合势函数文件。 混合势的写法在前面文章中已经介绍过,本文介绍一种拟合EAM势的方法。 该方法是运行Xiaowang Zhou编写的一个拟合程序,该程序可自动生成所需要的合金势。 这个程序能够拟合的合金元素有: Cu,

lammps_jiayou的博客 4616

《QT+PCL》点云配准进阶——GROR配准

GROR点云配准

阁楼 1318

智能导航的方法SmartNavigation

(百度和网页http://wayneliu.ms.mblogger.cn/Rss.aspx?CategoryID=1015的作者无关,不对其内容负责。)http://wayneliu.ms.mblogger.cn/我的.net世界zh-CHSRSS Generated by MBlogger Blogswayneliuhttp://wayneliu.ms.mblogger.cn/posts

徐虎的专栏 2361

手把手教你学 Simulink (1.3):探索Simulink模块库的奇妙世界

Simulink模块库按照功能分为多个类别,每个类别包含专门用于特定任务的模块。% 打开Simulink库浏览器% 或者以编程方式获取库列表disp('可用的库列表:');end常用模块(Simulink):最基础和最常用的模块信号处理模块(DSP System Toolbox):专业信号处理工具通信模块(Communications Toolbox):通信系统设计控制系统模块(Control System Toolbox):控制系统设计与分析% 创建自定义模块库。

QQ_778132974的博客 384

关于页面刷新的问题

在做.net开发时,经常能碰到这样的情况,页面很长,而我们一般用的都是服务器端控件,用服务器端控件有这样一个缺点,就是控件每次都要和服务器交互,而产生页面的刷新,试想一下,如果页面很长,而页面中的控件又很多,每次都要刷新到页面顶部,那我们在填写资料时页面每刷新一次我们都要拖动一次滚动条,这样实在是很麻烦,问题由此产生,一些人用SmartNavigation 方法,这个方法可行,但它一般会与页面中的

深度Java 3560

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

jQuery UI DatePicker“length为空或不是对象”错误的解决方法

<br />发现在ASP.NET站点中,如果在一个文本框中同时使用验证控件和DatePicker时会报“length为空或不是对象”这样的JS错误,Google一番,发现错误是这样子解决哒,捕获Datepicker的onSelect事件,但不做任何处理<br /> $("#<%= txtDate.ClientID %>").datepicker({      onSelect: function(dateText, inst) {          // 不做任何处理      }  });

我生活的点滴 2848

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

asp.net2.0随手乱记(25)验证控件与return confirm的冲突

   55,在页面添加一个TextBox控件,一个验证控件RequiredFieldValidator,还有一个Button按钮当TextBox为空时不能提交页面,客户前日提出要求点击按钮时要提示一个msgbox来让用户确认是否执行,于是在Button的OnClientClick属性里加上return confirm(Create New Color Code?);来进行客户端的确

1190

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

.net使用了验证控件,却不能取消怎么办?

luoshupeng的专栏 411

html主动触发控件事件,HTML事件的控件触发 (转)

HTML事件的控件触发 (转)[@more@]一个朋友问了我一个问题,颇有意思问题是这样的,一个页面上有一个的Button,为什么在Page_Load里加上了Button1.Attributes["onclick"]="script:return window.confirm('请确定输入无误?');";却弹不出确认对话框。因为是在上交流的,我给他测试了一下,语句没有一点问题,还以为是 出了问题。...

weixin_30610771的博客 466

智能导航

&lt;%@ Page ...... smartNavigation="true" %&gt;这个是智能导航,效果不错。。但是要在IE5或者以上版本才支持此功能 Private Sub RetainScrollPosition()Sub RetainScrollPosition() Dim saveScrollPosition As New StringBuilder() Dim setScro...

编程资料大全 208

同时安装vs2005和vs2008的问题

很久没来写日志了. 自从换了份工作后.就没有做那种一直不停的做项目的工作了 现在公司就一个项目,开发+运营.所以碰到新问题的机会相对以前较少.但是现在自由学习时间却多了很多. 抽空学习了asp.net mvc.这也是近段时间来的收获. 说起mvc,现在要说的问题也是跟它有关系的. 因为公司电脑上一直安装的是vs2005.所以要学得先装上vs2008. 然后断断续续的下载了几天时间终于将...

weixin_34293246的博客 220

JS验证和验证控件

在.net中js验证和验证控件不能同时使用,如果同事使用,他只会响应js验证,然后直接执行后台代码,所以一般情况下js验证用于前台,验证控件用于后台。js验证在服务器控件中的使用方法: Code<scripttype="text/javascript">functioncheck(){varrandomImage=$...

weixin_30569033的博客 417
上一篇: vs2005集成vss2005的方法
下一篇: windows 环境变量与重启
kucool
博客等级 码龄21年 16粉丝 64原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值