Javascript jQuery(1.8)-取消剩余的事件链

Javascript jQuery(1.8)-取消剩余的事件链,javascript,jquery,Javascript,Jquery,我有两个submit处理程序,它们按以下顺序添加: 首先在页面的特定代码中添加此代码: function validateOnSubmit() { //sacar el rojo de textfield de producto console.log("pre-submit"); if (currentRestrictions == null) { //debe seleccionar un producto $("#invalidPro

我有两个
submit
处理程序,它们按以下顺序添加:

首先在页面的特定代码中添加此代码:

function validateOnSubmit() {
    //sacar el rojo de textfield de producto
    console.log("pre-submit");
    if (currentRestrictions == null) {
        //debe seleccionar un producto
        $("#invalidProductDialog").dialog("open");
        return false;
    } else if (!currentRestrictions.allows($("#largo").val(), $("#ancho").val(), $("#calibre").val())) {
        //hay un error de validacion
        $("#invalidDimensionsDialog").dialog("open");
        return false;
    }
}
稍后在页面布局中添加了这个(我使用的是Yii框架,尽管它与问题无关):

我测试了它们是否按顺序运行(考虑其中的两条消息日志指令),以及它们是否按正确的顺序运行(即先执行validateOnSubmit,然后执行DoublePost检查器)

但是,我希望validateOnSubmit中的
返回false
会切断事件链(即运行
validateOnSubmit
并且在返回false之后不会运行双后置检查程序),但是在
返回false
之后(无论是
validateOnSubmit
函数中的两个原因中的哪一个)运行双事后检查处理程序。我认为在jQuery1.8中,使用
返回false将切断事件链


Q:当两种情况中的一种发生时,我如何切断事件链?i、 e.当前在
validateOnSubmit
上执行
返回false
的条件似乎jQuery没有通过到达
返回false
来切断事件链。预期的解决办法应该是:

function eventHandler(e) {
    //...
    e.stopImmediatePropagation();
    return false;
    //...
}
返回false
之前添加
stopImmediatePropagation
调用,使其保持一致

(这里又有一棵风滚草?)

function eventHandler(e) {
    //...
    e.stopImmediatePropagation();
    return false;
    //...
}