在我的代码中,我有一个绑定到文本框focusout
事件的Ajax查找。如果提供的数据无效,则Ajax请求将显示错误消息。我还在表单上有一个“取消”按钮,单击时隐藏一些字段,包括带请求的字段。但是,如果在文本框中指定了无效值,则单击取消按钮将触发Ajax请求(因为文本框失去焦点)并显示错误消息。如何在点击某个按钮时忽略jQuery事件?
我想,当我点击取消按钮,这阿贾克斯事件不解雇,所以即使用户输入了无效的条目形式会“闭合”没有错误消息显示。
这可能吗?
代码是这样的,基本上是:
$('#txtPostalCode').focusout(function() {
postalCodeLookup($(this).val()); // ajax method wrapper
});
$('button#cancelButton').click(function() {
$('#txtPostalCode').attr('disabled', true).addClass('disabled'); // applies CSS style to make textbox look like a label
$('#txtPostalCode').val($('#oldPostalCode').val()); // restore old value
});
,因为我自从点击之前,事件的内容大火说,你不能“取消”的形式,如果有在文本框中的无效条目,因为它会火ajax请求并提出错误消息。这个问题是出于可用性的角度,因为有人可能输入无效的邮政编码,意识到他们的错误,然后尝试取消该表格,但表单不会取消它自己,直到他们输入有效的邮政编码当表单实际取消时,它就会被重写)。
如果有更好的方法来处理我想做的事情我完全听到这个为好,这是我收到的要求:)
你可以发布一些代码? – 2012-02-10 16:16:10