Sweet alert 2 gem подтвердить окно перенаправить на ссылку после нажатия ok

Я не уверен, почему «ОК» или «Отмена» ничего не делают, в любом случае я хочу, чтобы когда кто-то нажимал «ОК», перенаправлять его на ссылку.

<div class = "popup" onclick = "sweetalertclick()">
              <p id = "center"><%= image_tag "pickup.png" ,width: "80px"%><br>
                <span  onclick = "sweetalertclick()"></span>Request a DDS pick u
                </span>
              </p>
            </div>
    <script>
    function sweetalertclick() {
    
    swal({
        title: "Request a DDS",
        text: "Please log in to DDS website to request a pick up, my code is: xxxx. By pressing ok you will link to google.com",
        showCancelButton: true,
        confirmButtonColor: "#DD6B55",
        confirmButtonText: "Ok",
        cancelButtonText: "Cancel",
        closeOnConfirm: false,
        closeOnCancel: false,
      },
      function(isConfirm){
        if (isConfirm) {
          window.location.href = "google.com"
        }
      }
    );
      
    }
    </script>

в файле гем

gem 'rails-assets-sweetalert2', source: 'https://rails-assets.org'
gem 'sweet-alert2-rails'
gem 'sweet-alert-confirm'

в приложении.js

//= require sweetalert2
//= require jquery
//= require jquery_ujs
//= require sweet-alert2-rails
//= require cocoon 
//= require sweet-alert-confirm  
//= require_tree .

в приложении.scss

 *= require_self
 *= require sweetalert2
 *= require_tree .
 */
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
944
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны использовать .then(), а затем передать процедуру перенаправления внутри этого:

Пример:

function sweetalertclick() {

swal({
    title: 'Request a DDS',
    text: "Please log in to DDS website to request a pick up, my code is: xxxx. By pressing ok you will link to google.com",
    showCancelButton: true,
    confirmButtonColor: "#DD6B55",
    confirmButtonText: "Ok",
  }).then((result) => {
  console.info(result)
    if (result) {
      window.location.href = "google.com";
    }
  });
  
}

Спасибо за ответ, но я не могу нажать "ОК" или "Отменить"

nourza 11.12.2020 02:17

Можете ли вы воспроизвести свою ошибку в JSFiddle и показать?

Harshana 11.12.2020 02:18

sweetalert2.js:223 SweetAlert2: неизвестный параметр «closeOnConfirm» sweetalert2.js:223 SweetAlert2: неизвестный параметр «closeOnCancel» warn @ sweetalert2.js:223

nourza 11.12.2020 02:34

Все еще такой же. Я обновил свой вопрос дополнительным кодом

nourza 11.12.2020 02:50

Можете ли вы воссоздать проблему в JSFiddle, пожалуйста?

Harshana 11.12.2020 02:53

все еще такой же. не могу нажать ок или отменить :s

nourza 11.12.2020 09:19

Теперь он работает после удаления этой ссылки <script src = "cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/7.33‌​.1/…>, но цвет и ширина кнопки не работают

nourza 11.12.2020 09:34

ссылка не отображается в героку. ты знаешь почему?

nourza 23.12.2020 02:07

В хероку не кликабельно

nourza 23.12.2020 02:35

Пожалуйста, проверьте, есть ли какие-либо проблемы в журналах или консолях браузера.

Harshana 23.12.2020 02:35

Опубликовать как новый вопрос. я постараюсь помочь

Harshana 23.12.2020 02:35

Я обновил свое приложение heroku. Как вы думаете, это причина?

nourza 23.12.2020 02:40

Точно сказать не могу. Это может быть проблемой. :)

Harshana 23.12.2020 02:40

Даже кнопка отмены не реагирует

nourza 23.12.2020 02:40

Я решаю это с помощью этого пакета exec rake assets:precompile Спасибо :)

nourza 23.12.2020 02:47

Другие вопросы по теме