限制asp.net中的多个事件;Javascript
Restrict multiple events in ASP .net & Javascript
我有一个文本框,附带一个文本更改事件;
<asp:TextBox ID="txtLoadPortCode" MaxLength="8" runat="server" ToolTip="Load Port Code" CssClass="form-control form-control-Mandatory" OnTextChanged="txtLoadPortCode_TextChanged" AutoPostBack="true"></asp:TextBox>
在文本更改时,它触发一个服务器端事件从数据库中获取Name,如果Name缺失,它显示一个从服务器端触发的Javascript警报。
ScriptManager.RegisterStartupScript(this, GetType(), "OriginPortMissing", "$(function(){alert('"This combination '" + this.txtLoadPortCode.Text + "' of Country, City & Site is not available in Master table. Please provide a valid Code.'");});", true);
我也有一个提交按钮,它有一个Javascript字段验证附加与它;
<asp:LinkButton ID="btnSubmitCreateRequest" runat="server" CssClass="btn btn-primary btn-custom btn-Custom-Link" OnClick="btnSubmitCreateRequest_Click" OnClientClick="return ValidateFields();">
<i class="fa fa-paper-plane" aria-hidden="true"></i>
<span>Submit Booking</span>
</asp:LinkButton>
在ValidateFields()函数上,我已经为多个控件编写了字段验证,如果任何验证失败,它会在"警报"窗口中显示错误消息。
所以情况是,如果用户在文本框中给出一些值并直接点击提交按钮,那么文本更改事件和提交按钮javascript验证都会被触发,同时产生双重警告消息(IE 11浏览器)。
是否有任何方法可以限制提交按钮验证事件?
最初不显示LinkButton
,将其设置为visible="false"
,在文本更改后(我的意思是在Textchanged
事件中)尝试将LinkButton
设置为visible="true"
使用setTimeOut
setTimeOut(function(){ put your validation code },10000)
Jquery中有这样的规定。使用event.stopImmediatePropagation()
。https://api.jquery.com/event.stopimmediatepropagation/] [1]请核对一下。
相关文章:
- 召回窗口加载事件 - javascript
- 动态创建OnClick事件Javascript
- 全局屏幕span onclick触发一个事件javascript
- 使用react js在跨域上执行事件javascript
- 在change事件javascript上动态添加行
- 在粘贴事件Javascript的输入字段中删除所有非数字字符
- 如何在多表单的输入框中使用输入事件javascript
- 无法查看特定信息.单击事件.Javascript
- 两个文本框事件Javascript
- 阻止鼠标滚轮滚动,但不阻止滚动条事件.JavaScript
- 从 onkeydown 事件 (Javascript) 获取当前用户输入
- “稍后提醒我”/“快速事件”JavaScript解决方案
- 更改我正在侦听的事件Javascript的对象的CSS
- setInterval 不允许同时单击事件 - javascript
- 对每种情况使用一个事件(JavaScript 开关)
- 仅创建第二次点击事件 Javascript
- 每 60 秒仅启动一次事件 (JavaScript)
- 如何连接来自不同文件的事件?Javascript/Backbone
- URL 更改事件 - JavaScript
- 无法在无头模式下使用 watir Webdriver 执行按钮元素的 onclick 事件 javascript