不能推迟或延迟ColdFusion.navigate(), ColdFusion.Ajax.submitForm()



也许Coldfusion的Ajax函数有些奇怪,但我不能弄清楚这个…我只是想使用ColdFusion.Ajax.submitForm发布一些数据,然后使用ColdFusion.navigate将新内容加载到#CartPopup。在加载Div之前,我需要Details.cfm完成对表单数据的处理。

function add2Cart(prodid){
    var submit = ColdFusion.Ajax.submitForm('AddToCart', 'Details.cfm');
    setTimeout("navigate(prodid)", 2000);
}
function navigate(prodid){
    ColdFusion.navigate('divbind.cfm?PRODID='+ prodid,'CartPopup','CB','EH');
    return false;   
}
也许拖延不是最好的办法。我想用:
jQuery.when

但我想知道如果可能我的问题,如果与CF ajax功能…我非常感谢任何见解或替代方法。

谢谢!

你的第一个代码片段应该是:

function add2Cart(prodid){
    ColdFusion.Ajax.submitForm(
        'AddToCart',
        'Details.cfm',
        function() { navigate(prodid); },
        function() { alert('Error happened - form was not submitted'); }
   );
}

您可以在这里看到submitForm可以接收2个回调处理程序,一个在提交完成时,另一个用于错误处理。

最新更新