"SCRIPT5009:" handleResponse "не определен" в Internet Explorer

Кто-нибудь знает, почему это не работает в IE?

Мой код выглядит следующим образом:

var xmlDocument = encodeURI('https://api.dc1.exacttarget.com/integrate.aspx?qf=xml&xml=<?xml version="1.0" ?><exacttarget><authorization><username>EXCATTARGET-USER</username><password>EXCATTARGET-PASS</password></authorization><system><system_name>subscriber</system_name><action>add</action><search_type>listid</search_type><search_value>17571300</search_value><search_value2></search_value2><values><Email__Address>test21@email.com</Email__Address><status>active</status><Full__Name></Full__Name><ChannelMemberID></ChannelMemberID></values><update>true</update></system></exacttarget>');

$('.triggerAjax').click(function() {

    $.ajax({
          type: 'POST',
          url: xmlDocument,
          dataType: 'jsonp'
        });
});

3 ответа

Решение
var xmlDocument = encodeURI('https://api.dc1.exacttarget.com/integrate.aspx?qf=xml&xml=<?xml version="1.0" ?><exacttarget><authorization><username>EXCATTARGET-USER</username><password>EXCATTARGET-PASS</password></authorization><system><system_name>subscriber</system_name><action>add</action><search_type>listid</search_type><search_value>17571300</search_value><search_value2></search_value2><values><Email__Address>test21@email.com</Email__Address><status>active</status><Full__Name></Full__Name><ChannelMemberID></ChannelMemberID></values><update>true</update></system></exacttarget>');

$('.triggerAjax').click(function() {

    $.ajax({
          type: 'POST',
          url: xmlDocument,
          dataType: 'jsonp'
        });
});

SCRIPT5009: 'handleResponse' is undefined сообщение является результатом отсутствия функции обратного вызова для success событие. Вам необходимо предоставить исполняемый метод, как показано ниже:

$.ajax({
    url: "http://api.dc1.exacttarget.com/integrate.aspx",
    data: { qf:'xml', xml:xmlDocument },
    dataType: "xml",
    success: function ( data ) {
        alert( data );
    }
});​

Я испытывал ту же проблему в IE9. Вполне возможно, что у вас по умолчанию установлен jQuery ajax cache (он включен по умолчанию).

Попробуйте установить кеш установки ajax на false в начале javascript вашей страницы:

$(document).ready(function() {
    $.ajaxSetup({ cache: false });
    // your other initialization work goes here...
}

У меня была та же самая проблема вчера, и это решило ее для меня. Надеюсь это поможет.

Для дальнейшего чтения, перейдите по этой ссылке: http://www.peteonsoftware.com/index.php/2010/08/20/the-importance-of-jquery-ajaxsetup-cache/

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