Bootstrap data-loading-text 無效

      背景:最近在研究bootstrap,其有個button功能是經過爲button添加一個data-loading-text的屬性,在點擊該按鈕後,button的內容會顯示data-loading-text設置的值,同時button被disabled掉,在稍等片刻後該button又會恢復原狀。我的感受這是個十分實用且友好的功能,原先本身也寫過一個,在表單提交按鈕點擊其將全部按鈕設置爲disabled。然而,在本身的程序中,爲button添加完該屬性,點擊後卻沒有任何效果,奇怪了,其餘組件設置了data-的屬性就直接生效了,怎麼這個不行!
      分析:經多方覈實,閱讀了bootstrap.js的源碼,並跟蹤了其網站該網頁的腳本加載處理狀況,驚奇的發現,該網頁最後竟然還加載了一個application.js的腳本,在該腳本里作了不少初始化和綁定的工做!!大爺的,竟然不把這麼重要的信息寫在網頁內容裏!
      解決:原application的是經過ID初始化的,這裏提供一個更通用的方案,放在ready裏就行 bootstrap

/*
 * 初始化按鈕的loading功能,點擊後將顯示Loading字樣,而且按鈕被disabled掉,沒法連續點擊,防止二次提交
 * 超過3秒後按鈕將恢復原狀
 */
$('button[data-loading-text]').click(function () {
    var btn = $(this).button('loading');
    setTimeout(function () {
        btn.button('reset');
    }, 3000);
});
相關文章
相關標籤/搜索