2016-05-02 120 views
5

在bootbox.js中,默認情況下Ok按鈕顯示取消按鈕後。我希望它是第一個,然後取消。這是當前場景的情況,Bootbox js:更改Ok按鈕的位置

http://paynedigital.com/img/confirm-simple.png

我首先需要確定按鈕。我有它的文檔場景,但沒有找到辦法做到這一點。

+0

試試jquery呢? –

+1

你的意思是我們無法通過這個插件做到這一點? –

+0

好..我還沒有與Bootbox的JS工作..所以不能說...;( –

回答

4

你可以通過CSS來完成。

.modal-footer button { 
    float:right; 
    margin-left: 10px; 
} 

這裏是工作的按鈕的撥弄http://jsfiddle.net/9L3A9/51/

+0

我們也可以通過創建自定義按鈕來實現這一點,但爲什麼我只是需要兩個按鈕。 :) –

+0

這完美解決了這個問題,只是改變了按鈕的順序。謝謝。 :) – Semmel

6

您可以更改訂單。試試:

bootbox.confirm({ 
    title: "danger - danger - danger", 
    message: "Are you sure of this?", 
    buttons: { 
     cancel: { 
     label: "Cancel", 
     className: "btn-default pull-right" 
    }, 
    confirm: { 
     label: "Delete", 
     className: "btn-danger pull-left" 
    } 
    }, 
    callback: function(result) { 
    // Do your stuff here 
    } 
}); 

希望這對你有用。

+1

我試過這個,雖然它改變了按鈕的順序,但它也將第一個按鈕完全拉到左邊。所以對我來說,CSS解決方案可以更好地做到這一點,並且完全符合我的要求。 – Semmel

+0

這是一個確切的解決方案,但您仍然可以對其進行修改。 – gdmanandamohon

0

我花了一個小時看看這個問題,然後我改變了bootbox.js文件。

按鈕的枚舉之前,我補充說:

var list = Object.keys(buttons).map(
    function (key) { 
     return buttons[key]; 
    }); 

    buttons = list.sort(function (a, b) { 
     return b.order -a.order ; 
    }); 

然後,你可以爲你的按鈕設置的順序。

Ouf!

0

我在JavaScript

exports.confirm = function() { 
    var options; 

    // changed the order of the buttons 
    //options = mergeDialogOptions("confirm", ["cancel", "confirm"], ["message", "callback"], arguments); 
    options = mergeDialogOptions("confirm", ["confirm", "cancel"], ["message", "callback"], arguments); 
1

我面臨同樣需要改變的順序。我已經解決了這個問題。我已經選擇了一個按鈕之間10個像素的差異。

<style> 
    .margin-left-10px { 
     margin-left: 10px; 
    } 
</style> 

然後我使用引導類到按鈕,它的工作完美。

<script> 
    buttons: { 
      confirm: { 
       label: 'Yes', 
       className: 'btn-danger' 
      }, 
      cancel: { 
       label: 'No', 
       className: 'btn-success pull-right margin-left-10px' 
      } 
    } 
</script> 

在這裏,我的沒有按鈕將永遠出現在右邊。