如何在ASP.NET应用程序中使用jQuery捕获提交事件?
|
我试图处理使用jQuery的表单元素的submit事件。 $("form").bind("submit",function() {
alert("You are submitting!");
});
这不会在表单提交时(作为回发的一部分,例如当我点击按钮或链接按钮时)触发。 有没有办法使这项工作?我可以附加到触发提交的单个元素的事件,但是这不太理想 – 有太多的可能性(例如,autopostback = true的下拉列表,键盘快捷键等) 更新:这是一个最小的测试用例 – 这是我的aspx页面的全部内容: <%@ page language="vb" autoeventwireup="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:scriptmanager id="ScriptManager" runat="server" enablepartialrendering="true">
<scripts>
<asp:scriptreference path="/Standard/Core/Javascript/Jquery.min.js" />
</scripts>
</asp:scriptmanager>
<p>
<asp:linkbutton id="TestButton" text="Click me!" runat="server" /></p>
</div>
</form>
<script type="text/javascript">
$(document).ready(function() {
alert("Document ready.");
$("form").submit(function() {
alert("Submit detected.");
});
});
</script>
</body>
</html>
我得到“文档准备”警报,但不是“提交检测到”,当点击链接按钮。 解决方法感谢,@肯布朗宁和@russau指向我的劫持方向__doPostBack。我看到了几种不同的方法: >硬编码我自己的__doPostBack版本,并将其放在页面上,以便它覆盖标准版本。 前两个似乎不受欢迎的原因(例如,假设在将来有人需要添加自己的功能到__doPostBack)所以我已经去了#3。 这个addToPostBack函数是一个常见的pre-jQuery技术的变体,我用来向window.onload添加函数,它工作得很好: addToPostBack = function(func) {
var old__doPostBack = __doPostBack;
if (typeof __doPostBack != 'function') {
__doPostBack = func;
} else {
__doPostBack = function(t,a) {
if (func(t,a)) old__doPostBack(t,a);
}
}
};
$(document).ready(function() {
alert("Document ready.");
addToPostBack(function(t,a) {
return confirm("Really?")
});
});
编辑:更改addToPostBack,使 >它可以接受与__doPostBack相同的参数>正在添加的函数在__doPostBack之前发生>要添加的函数可以返回false以中止回发 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC强类型部分视图,无法加载类型错
- asp.net-mvc-3 – 在asp.net MVC3.0中创建GridView
- asp.net-web-api – 使用控制器上的Xml注释的ASP.NET Web A
- asp.net – 为什么这违反了类型约束?
- asp.net – 如何制作可配置的DisplayFormat属性
- asp.net-mvc – 当前动作是ChildAction吗?
- asp.net-mvc-2 – 使用ASP.NET MVC 2时更好地保留过滤选项的
- 在ASP.NET MVC中搜索路径
- ASP MVC C#:是否可以将动态值传递给属性?
- asp.net – 如何标签(设置标题)为IIS Express过程?
- asp.net-mvc – 记录死亡的所有黄色屏幕,即使它是
- Asp.net超链接控件相当于
- asp.net – App_Start文件夹在ASP 4.5仅在WebApp
- asp.net – 在FormsAuthenticationTicket上的Ver
- asp.net-mvc – 使用Razor在ASP.NET MVC3中的文件
- 有没有办法将一个onclick事件添加到ASP.NET标签服
- asp.net-mvc – MVC 3 Ajax.ActionLink不能正常工
- asp.net-mvc – MVC5 – 数据注释 – 客户端验证
- asp.net-mvc – ASP.NET MVC泛型基础视图类
- 如何从asp.net按钮单击事件调用javascript函数
