0

我有一个提交按钮单击,这对于许多弹出窗口都很常见。这是我的html和点击事件,

<div class="myContainer ">
        <button onclick="javascript:;" class="shcBtn shcBtnCTA submit">
            <span>Close</span>
        </button>
</div>

$('.myContainer .submit').on('click', function(){
        var socket = new easyXDM.Socket({
            onReady: function(){
            // you need to wait for the onReady callback before using the socket
                socket.postMessage("submitflow");
            }
        });
    });

现在在一个特定的流程中,我必须让我的提交按钮调用一个 ajax 调用,如果它成功,那么我应该继续进行套接字调用。我不想改变我的点击功能,因为它无处不在。还有其他方法吗???

4

2 回答 2

0

您可以手动触发点击事件,这将触发处理程序

$('.myContainer .submit').click()

或者

$('.myContainer .submit').trigger('click')
于 2013-07-26T04:47:27.450 回答
0

如果有什么特别的,你应该在标记中让它特别,所以它不会得到与其他所有相同的处理程序:

<div class="myContainer">
    <!-- normal container -->
</div>

<div class="particularContainer">
    <!-- particularContainer -->
</div>

然后,您可以像这样区分特定情况:

$('.myContainer .submit').on('click',function(){
    beforeSubmit();
});

$('.particularContainer .submit').on('click',function(){
    $.ajax({/* ... */}).done(function(){
        beforeSubmit();
    });
});
于 2013-07-26T05:07:10.690 回答