2016-06-02 1 views
0

Я использую библиотеку импровизированных jQuery и не понимаю ее асинхронную природу. У меня есть код ниже, который я хочу перенаправить после запуска приглашения. Я не хочу, чтобы следующая строка кода выполнялась, если моя инструкция data.redirectPage истинна.Как я могу импровизировать не продолжать, пока не будет выполнено подача и выйдет

   success: function (data) { 
        if (data.redirectPage == "hackathonregistration") { 
         $.prompt("Your code has been accepted and you will now be redirected to the hackathon registration page", 
         { 
          submit: function() { 
           window.location.href = "/Register/hackathon"; 
          } 
         }); 
        } 

ответ

0

Из того, что я прочитал быстро о Impromptu, ваш код выглядит нормально.
За исключением отсутствующего } закрыть success функции ...;)

И нет кнопок на отправку вы пытаетесь вызвать.
Это важно И.

Попробуйте это:

success: function (data) { 
    console.log(data.redirectPage); 
    if (data.redirectPage == "hackathonregistration") { 
     $.prompt("Your code has been accepted and you will now be redirected to the hackathon registration page", 
     { 
      buttons: { "Yes": true, "No": false }, 
      submit: function(e,v,m,f) { 
       // use e.preventDefault() to prevent closing when needed or return false. 
       // e.preventDefault(); 
       console.log("Value clicked was: "+ v); 
       if(v){ 
        window.location.href = "/Register/hackathon"; 
       } 
      } 
     }); 
    } 
} 

Я полагаюv является bolean истина/ложь.
Как сказал, я прочитал действительно быстро на Impromtu.

Personnaly, я использую SweetAlert. Ищите его в качестве альтернативы ... Может быть, проще.