jQuery - простая ошибка Ajax или сложная проблема Safari? - PullRequest
0 голосов
/ 12 февраля 2011

Следующий фрагмент кода работает в FF, IE и Chrome.
Однако это не работает в Safari 5.0.3!
Safari не возвращает сообщение об ошибке любого вида.
(Обратите внимание, что команда 'debugger;' по какой-то причине никогда не перехватывает ни в одном браузере, и всплывающее уведомление никогда не появляется) alert («Popup будет закрываться»); ', однако, похоже, что ajax работает в упомянутом еще как-то)

$(document).ready(function(){
    // debugger; <-- This works
    $(".oscform").click(function(){
        debugger; // <-- this doesn't
        alert ('Pop up will now close');
        getCodeEZ(''+$(this).attr('lmgthing'),''+$(this).attr('ezprod'),''+$(this).attr('count'));
        $.ajax({
              url: '/shopping_cart.php?osCsid=<?php echo $osCsid; ?>',
              type: "POST",
              data: 'sort=2a&amp;ezprod='+$(this).attr('ezprod'),
              async:false,
              error: function(xhr,err){},
              success: function(data){}
           }
        )
        //closePop();
    });
// more code below

1 Ответ

0 голосов
/ 14 марта 2011

Я никогда не выяснял, почему отладчик не работает в этом примере, однако polarblau дал хороший совет по использованию console.log (), который очень полезен и дал мне понимание этой проблемы.Я обнаружил, что проблема по какой-то странной причине заключалась в том, что у другого javascript не было закрывающего тега в какой-то другой части страницы при вызове AJAX.Это была проблема кодирования с моей стороны.При добавлении закрывающего тега Safari работал без сбоев, он каким-то образом сломал IE, Chrome и Firefox!Поэтому я немного изменил стиль кодирования, и он исправил остальные мои проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...