Буду признателен, если кто-нибудь скажет мне, что мне нужно сделать, чтобы этот код работал как в IE, так и в Firefox. В Firefox работают запросы подтверждения, но запрос AJAX не возникает. Firebug сообщает об этой ошибке: jquery-1.11.1.js (строка 9631). Это код JQuery найти на этой линии:jQuery AJAX работает с IE, но не с Firefox
xhr.send((options.hasContent && options.data) || null);
JQuery код:
$(document).ready(function() {
$("#frmDelFiles").submit(function(event) {
var names = "";
var id_array = [];
var elements = document.getElementsByName('files2del');
for (var i = 0, l = elements.length; i < l; i++)
{
if (elements[i].checked)
{
//alert("ip_attachments record " + elements[i].id + " - " + elements[i].value + " is checked.");
var response = confirm("Do you consent to delete the " + elements[i].value + " file?\n\nClick OK if Yes, otherwise Cancel.");
if (response == true) {
id_array[id_array.length] = elements[i].id;
if (names == "") {
names = elements[i].value;
} else {
names += ", " + elements[i].value;
}
}
}
}
if (names == "") {
alert("Zero files have been selected for deletion.");
} else {
$.ajax({
type: "POST",
url: "del_ipa_rcd.php",
data: {id_array: id_array, names: names},
dataType: "html",
success: function(response){
$("#delete_result").html(response);
//alert(response);
}
});
}
});
});
PHP:
<form name='frmDelFiles' id='frmDelFiles' method='POST' class='frmFileUpload'>
<input type='submit' value='Delete Checked Files' name='delFiles' class='btnSubmit' />
</form>
...
...
while ($attach_row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo " <input type='checkbox' name='files2del' id='" . $attach_row['id'] . "' value='" . $attach_row['name'] . "'>\n";
echo " <a target='_blank' href='/php/dwnld_blob.php?column=content&tbl=ip_attachments&id=" . $attach_row['id'] . "'>" . $attach_row['name'] . "</a><br>\n";
}
У вас есть массивная уязвимость XSS в вашем флажке ' \ n"; 'Вероятно, вы хотите использовать систему шаблонов, а не конкатенацию строк. Я также подозреваю, что использование вами mysql_fetch_array является уязвимым для SQL-инъекции. Возможно, вам стоит дважды проверить ваш ответ XHR а также уязвимость XSS. Вы просто прямо взламываете HTML и визуализируете его из своего ответа ... –
Итак ..... Какова была ошибка? –
@Kevin, ошибка в AJAX del_ipa_rcd.php не вызвана в Firefox Firebug сообщает об ошибке в jquery.js в строке 9631. Могу ли я получить более описательную ошибку где-то в другом месте? –