У меня чертовски много времени с этим, ребята.Я пытаюсь предупредить кого-то, если он пытается покинуть страницу и уже загрузил файлы.Сложность в том, что я хочу, чтобы он не предупреждал их, если они отправляют.Это странная часть, код, который я собираюсь вставить, работает в Chrome, но всем остальным браузерам это не нравится.Это часть плагина, поэтому просто игнорируйте часть кода.
function cleanFiles(obj){
var $obj = $(obj),
$jForm = $obj.parents("form");
$jForm.find("input[type=button]:last").not($obj).bind("click.save", function(event){
$(window).unbind('beforeunload.cleanFile unload.removeFiles');
});
$(window).bind('beforeunload.cleanFile', function(event){
var localSettings = $.extend({}, settings),
filesList = "";
$("input[type=hidden].fileFieldLists").each(function(){
var $obj = $(this);
filesList += ($obj.val() || "");
});
if(filesList.length){
return localSettings.defaultLeaveMessage;
}
$(window).bind('unload.removeFiles', function(event){
var filesList = [];
$("input[type=hidden].fileFieldLists").each(function(){
var $obj = $(this),
localSettings = $.extend({}, settings, $obj.next().data()),
fieldValues = ($obj.val().indexOf("*") ? $obj.val().split("*") : $obj.val()),
fieldValuesCnt = fieldValues.length;
for(var i = 0; i < fieldValuesCnt; i++){
filesList.push(localSettings.filepath + fieldValues[i]);
}
});
if(filesList.length){
deleteFiles(filesList.join(","), false);
}
});
});
}