Проблема с zclip и jquery ajax в Firefox
Я знаю, что он был рассмотрен в различных темах о возможности использования zclip для копирования и вставки в буфер обмена с использованием ajax, но мне интересно, является ли моя проблема более общей с запросами jquery, firefox и ajax...
$("#generate-report-to-clipboard").zclip({
path: '/Content/ZeroClipboard.swf',
copy: function () {
var options = {
async: false, success: function (data) {
// now do ajax call for report results
$.ajax({
url: '<%= Url.Action("GenerateEmailToClipboard") %>',
type: 'POST',
async: false,
success: function (data, status) {
$("#copy-holder").text(data);
}
});
}
};
$("#report-definition-form").ajaxForm(options);
$("#report-definition-form").submit();
return $("#copy-holder").text();
}, afterCopy: function () { alert('something'); }
});
Итак, идея в том, что когда я нажимаю на ссылку, я иду и запрашиваю данные для копирования, и в случае успеха добавляю эти данные в буфер обмена.
Этот метод отлично работает в IE 8 (странно я знаю) и Chrome 12, но не в Firefox 4.
Причина, по которой я думаю, что это может быть связано с запросом AJAX, заключается в том, что когда я удаляю вызов AJAX и устанавливаю значение #copy-holder в значение, оно без проблем копируется в буфер обмена.
Пожалуйста, помогите, я схожу с ума!
1 ответ
Я обнаружил, что количество вызовов AJAX странно в Firefox. У меня есть всплывающее окно, которое позволяет пользователю копировать, затем перейти к следующему объекту, открыть всплывающее окно и скопировать. В Chrome, IE и т. Д. Запросы AJAX единичны, и поэтому результат может быть возвращен, но в Firefox существует множество запросов AJAX. По одному на каждое всплывающее окно, по которому щелкнул пользователь.
Проблема заключается в самом файле jquery.jzclip.js, 2-й,3-й.. запросы передаются обратно из этого файла в функцию AJAX, как у вас. Если вы используете консоль (F12), вы увидите, что это происходит. Пока нет никакого решения, это чертовски раздражает, пытаясь устранить неполадки с файлом js, который был предоставлен.