Я использую sweetAlert, это нормально работает с одной кнопкой, но теперь я хочу нажать кнопку с выбором, но я не могу этого сделать, что не так?
Теперь мое перенаправление работает на обоихкнопки, но я хочу нажать только для одной кнопки.Как я могу это сделать?
Что я пробовал: -
function CallMessage() { swal({ title: 'this is title', text: 'message', buttons: ["Finish Now", "Exit Anyway"] }).then(function() { window.location = 'login.aspx'; }) }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script> <button onclick="CallMessage();">Button</button>
Ответ будет оценен!
Обещание, возвращаемое swal(), преобразуется в значение нажатой кнопки.При использовании сокращения массива для установки свойства buttons первая кнопка (отмена) возвращает null, а остальные возвращают true:
swal()
buttons
null
true
function CallMessage() { swal({ title: 'this is title', text: 'message', buttons: [ 'Finish Now', 'Exit Anyway' ] }).then(value => { console.log(value); if (value) { console.log('Redirecting!'); // location.href = 'login.aspx'; } }) }
Если у вас более двух кнопок, вы также можете установить пользовательские значения для каждой из них, используя объект вместо массива.Подробнее см. В разделе Расширенные примеры документации.