2016-05-02 12 views
5

W bootbox.js, domyślnie przycisk Ok jest wyświetlany po przycisku Anuluj. Chcę, żeby to było pierwsze, a następnie anuluj. Oto sytuacja z obecnym scenariuszuBootbox js: Zmień położenie przycisku Ok

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

muszę najpierw przycisk OK. Mam scenę z jej dokumentacją, ale nie znalazłem sposobu, żeby to zrobić.

+0

spróbuj jquery? –

+1

masz na myśli, że nie możemy tego zrobić za pomocą tej wtyczki? –

+0

well..Nie pracowałem jeszcze z bootbox js ... nie mogę powiedzieć ..; ( –

Odpowiedz

4

Możesz to zrobić przez CSS.

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

Tu pracuje skrzypce zamówienie http://jsfiddle.net/9L3A9/51/

+0

Możemy to również osiągnąć, tworząc niestandardowe przyciski, ale dlaczego tak zrobię, jeśli potrzebuję tylko dwóch przycisków. :) –

+0

To rozwiązało problem doskonale i po prostu zmieniło kolejność przycisków. Dzięki. :) – Semmel

6

Można zmienić przycisków. Wypróbuj:

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 
    } 
}); 

Mam nadzieję, że to zadziała.

+1

Próbowałem tego, a gdy zmienia kolejność przycisków, to również pierwszy przycisk wciąga całkowicie w lewo. Tak więc dla mnie rozwiązanie CSS znacznie lepiej i robi dokładnie to, co chcę. – Semmel

+0

To jest dokładne rozwiązanie, ale nadal można je modyfikować. – gdmanandamohon

0

Spędziłem godzinę na zapoznanie się z tym problemem, a następnie zmieniłem plik bootbox.js.

Przed wyliczeniem przycisków I dodaje:

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

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

Następnie można ustawić zlecenia dla przycisków.

Ouf!

0

zmieniłem kolejność 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

mam do czynienia samą koniecznością. Rozwiązałem tę drogę. Wziąłem klasę, aby różnica między przyciskami wynosiła 10 pikseli.

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

Potem użyłem klasy bootstrap do przycisku i działa idealnie.

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

Tutaj mój nie przycisk pojawi się w prawo na zawsze.

Powiązane problemy