我在asp.net mvc3中工作,并且对我的标签和登录数据有部分视图。在一个视图(我的预览视图)中,我生成一些图像,并将它们上传到云,然后为用户显示它们。然后,用户可以选择Cancel
或Submit
。
我希望除了Submit
之外还有任何按钮,ActionLink或下拉菜单执行取消功能(包括从云中删除图像以及其他一些内容),但我不知道如何获取除Submit
点击之外的每个事件的jQuery事件处理程序。目前,我有一个jQuery“取消”功能,它绑定到Cancel
按钮上的点击事件,现在需要扩展其用法。
我认为这是自我解释的,但如果您需要查看代码,请询问。
所有可能的事件:
在我的部分视图中,我有这些剃刀html助手:2 x @Html.ActionLinks
和1 x @Html.DropDownList
我的取消和提交按钮的格式为:<input type="submit" value="Cancel" />
[更新] :我的点击事件现在正在运行,但是我想在点击时使用e.preventDefault();
,因此在我的取消/删除完成之前它不会更改视图,但是,在取消功能完成后,如何同步提交项目?我假设我使用了回调,但是我使用e.submit()
或e.click()
还是其他?我希望它适用于<a>
代码和dropDown
更改
答案 0 :(得分:2)
这个怎么样?
$("input,a,select").not("input:submit").click(function(e) {
// do work
});
工作示例:http://jsfiddle.net/eqwkD/
<强>更新强>
$("input,a,select").not("#SubmitButton").click(function(e) {
// do work
});
答案 1 :(得分:1)
如果下一个代码不是submit:
,则会在单击时调用cancelFunction$(":input").click(function ({
if (!$('#myinput').is(':submit')) {
cancelFunction();
}
});
这将使所有非提交类型的按钮调用取消按钮。如果您想更具体地在按钮上添加id并使用以下代码:
$(":input").click(function() {
if (!($('#myinput').attr("id") == "idOfSubmitButton")) {
cancelFunction();
}
})
答案 2 :(得分:0)
您可以尝试在jQuery点击处理程序中使用:not selector:
$("input,a,select").not("#submit").click(cancelFunction);
这将为id为'submit'的元素选择除之外的所有输入元素,并将它们绑定到取消函数。