2017-08-15 56 views
1

嗨我發送一些信息從我的模態到我的PHP服務器。直到php服務器沒有響應,我不想以任何方式關閉模式(單擊外部,按ESC,單擊關閉按鈕等)。所以我用下面的代碼:允許引導模態被動態關閉

$('#modal').on('hide.bs.modal', function (e) { 
    e.preventDefault(); 
}); 

一旦服務器響應,我怎麼能恢復到模式的默認行爲?我嘗試了以下,但它不起作用:

$('#modal').on('hide.bs.modal', function (e) { 
    return true; 
}); 
+0

嘿,你可以在這裏得到一些信息abiut這種方法的preventDefault https://stackoverflow.com/questions/1551389/how-to-unbind-a-listener-that-is-calling-event-preventdefault-使用-jquery –

+0

你嘗試使用$('#yourModal')。modal({'backdrop':'static'})並用jquery關閉,當你從服務器端得到響應時; – hasan

回答

2

這種方法怎麼樣? 在執行ajax請求之前,將變量submitting設置爲true,並在完成之後回到false。

$('#modal').on('hide.bs.modal', function (e) { 
    if (submitting) { 
     e.preventDefault(); 
    } 
}); 
+0

這應該工作 –