Проблема функции confirm в ИЕ
<?php include("lib.php"); /*Подключаем файл библиотек*/ db_connection(); /*Подключаемся к базе данных*/ if (isset($_GET['del'])) /*Проверка существования нужной Гет-переменной*/ { mysql_query("DELETE FROM t_test WHERE id='".$_GET['del']."'"); /*Удаляем запись, если отправлена Гет переменная*/ } $q = mysql_query("SELECT * FROM t_test ORDER BY id"); /*Считываем все оставшиеся данные из таблицы*/ ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script type="text/javascript" src="scripts/lib.js"> <!--Подключаем JS --> </script> </head> <body> <?php while($row = mysql_fetch_assoc($q)) { echo '<a href="index.php?del='.$row['id'].'" onClick= "return Proba()">'.$row['text'].' Удаление</a><br><br>'; /*Выводим в цикле*/ } ?> </body> </html> Ребята, вот выкладываю полный тестовый код. Итак в базе есть таблица: t_test. Если отправлена страница с Get-переменной Del, то происходит удаление записи, в зависимости от того какую ссылку нажали. (Ряд ссылок выдается в цикле, их число соответствует количеству записей в базе) Ссылка однако при своем нажатии выдает некий Джава-скрипт запрос "Хотите удалить?" Если нажимается "Да", соответственно происходит удаление. ----------------------------- Вот код вызываемой в ссылке Джава-скрипт функции: function Proba() { return confirm("Вы хотите удалить это произведение?"); } Так вот и в Мозилле и в Хроме весь этот спектакль отрабатывает совершенно нормально. Поведение ИЕ 8 странно. Если вы один раз выбрали "Удалить, то" Выбранная запись удаляется. (Как и должно быть.) А вот если при попытке удаления следующей за уже удаленной записи, Вы выбрали "Отмена", запись все равно будет удалена. |
Часовой пояс GMT +3, время: 15:23. |