2015-03-08 2 views
-2

Так что у меня нет большого опыта работы с Javascript, но я хорошо справился в прошлом. У меня есть этот веб-сайт, где я пытаюсь запустить «geoip», чтобы вытащить две iso, чтобы перейти на определенную страницу, и я получил функцию. Однако, если указанная ISO завершает покупку, вам предлагается страница «Спасибо», но она уходит, потому что «geoip» все еще на месте. Я попробовал запустить «возврат», но, похоже, не может его повесить. В Sublime Text 3 это выглядит хорошо, любая помощь была бы высоко оценена. Вот мой код:SyntaxError: Неожиданный токен else

$.ajax({ 
    url: 'https://freegeoip.net/json/', 
    type: 'POST', 
    dataType: 'jsonp', 
    success: function(location) { 
     // If the visitor is browsing from Australia or New Zealand. 
     if (location.country_code == 'AU' || location.country_code == 'NZ') { 
      // Redirect visitor to the purchasing store. 
      window.location.href = 'http://example.com/order-international/'; 
      else { 
       location.country_code == 'AU' || location.country_code == 'NZ' === window.location.href = 'http://example.com/thanks-international/') { 
       return; //stop the execution of function 
      } else { 
       //keep on going 
      } 
     } 
    } 
}); 
+5

Добро пожаловать в переполнение стека! Как было предложено заполнителем в текстовом поле заголовка, название вашего вопроса должно быть короткой версией вашего вопроса, а не «пожалуйста, помогите мне» или тому подобное. –

+1

Я очистил форматирование кода. Глядя на результат, я подозреваю, что у вас есть неуместная пара '{}' (по крайней мере, похоже, есть и другие проблемы). –

+1

использовать 'GET' для jsonp – charlietfl

ответ

2

Две вещи:

Во-первых, когда я очистил свой код форматирования, это стало совершенно ясно, что есть некоторые неуместны {} (по крайней мере). Я попытался угадать из комментариев, что вы действительно пытались сделать ниже.

Во-вторых, вы сказали, что хотите прекратить выполнение «функции», поэтому я предполагаю, что этот вызов ajax находится где-то в некоторой функции.

Что вы делаете, это сделать остальную функцию функцией, а затем вызовите, что из обработчика успеха ajax, если вы хотите его запустить, или нет, если вы этого не сделаете. Например .:

function yourOuterFunction() { 
    $.ajax({ 
     url: 'https://freegeoip.net/json/', 
     type: 'POST', 
     dataType: 'jsonp', 
     success: function(location) { 
      // If the visitor is browsing from Australia or New Zealand. 
      if (location.country_code == 'AU' || location.country_code == 'NZ') { 
       // Redirect visitor to the purchasing store. 
       window.location.href = 'http://example.com/order-international/'; 
      } else { 
       // keep going 
       keepGoing(); 
      } 
     } 
    }); 

    function keepGoing() { 
     // The part you want to do after you have the ajax result 
    } 
} 

я не знаю, что вы пытаетесь сделать с вашим thanks-international ссылки, но, надеюсь, что получает вы возглавляли правильный путь.

Смежные вопросы