|
|
|
| Есть такая форма, кот. выводит список имеющихся в базе клиентов, после выбора радиокнопкой одного из них, отправляет обработчику на удаление:
<form action="drop.php" method="post">
<?
$res = mysql_query("SELECT iid,name FROM clients WHERE master=$id");
$row = mysql_fetch_array($res);
do
{
$iid=$row['iid'];
$name=$row['name'];
printf ("<input name='id' type='radio' value='$iid'>$name</a>");
}
while ($row = mysql_fetch_array ($res));
}
else
{echo "Пока нет клиентов";}
?>
<input name="del" type="submit" value="Удалить">
</form>
|
Нужно при нажатии кнопки "Удалить" вывести модальное окно с предупреждением об удалении и после подтверждения отправить обработчику.
Понравился такой вариант окошка:
<input type="button" id="show_modal" value="Показать модальное окно">
<div id="modal_dialog" style="display:none; cursor: default" class="dialog">
<div class="dialog_title_bar">
<div class="dialog_caption">Клиент будет удалён</div>
<div class="rotes_kreuz"></div>
</div>
<div class="dialog_pane">
<div>Вы уверены?</div>
<div style="margin-top: 10px;">
<form action="drop.php" method="POST">
<input type="submit" id="yes" value="Да" class="dialog_button"/>
<input type="button" id="no" value="Нет" class="close_dialog dialog_button" />
</form>
</div>
</div>
</div>
|
Если в предыдущем скрипте полностью убрать <form action="drop.php" method="post"></form>
и кнопочку поменять на type="button", то получается как надо, то есть последняя форма отправляет обработчику после подтверждения. Однако она не отправляет $iid клиента, кот. выбирают радиокнопкой. Бьюсь полдня, ничего не могу придумать, как отправить нужный idd.
Если не сильно мудрёно написал, прошу помощи | |
|
|
|
|
|
|
|
для: netas
(13.06.2010 в 19:02)
| | Во-первых, это не модальное окно. Во-вторых, зачем нужен input type="button" id="no" value="Нет"?
В третьих, если список, то либо давайте имена кнопкам разные, либо указывайте их как массив (что лучше). | |
|
|
|
|
|
|
|
для: netas
(13.06.2010 в 19:02)
| | Можно на кнопку "Удалить" повесить примерно следующее:
onclick="if(confirm('Угу?'))this.submit()"
|
Это то, что вы хотите? | |
|
|
|
|
|
|
|
для: Киналь
(13.06.2010 в 21:01)
| | Да, именно так, только мне понравился (где-то нашёл) тот вариант., т.е. темнеет экран, всплывает красивое окошко. Кстати, в вашем варианте при нажатии на нетвсё-равно отправляет. Как сделать, чтоб была отмена, вдруг человек случайно нажал. | |
|
|
|
|
|
|
|
для: netas
(13.06.2010 в 21:45)
| |
<form onsubmit="return confirm('Send?')">
<input type="submit" value="Send">
</form>
|
| |
|
|
|
|
|
|
|
для: sim5
(13.06.2010 в 22:09)
| | Ага, спасибо! | |
|
|
|
|
|
|
|
для: netas
(13.06.2010 в 22:39)
| | input type="button" id="no" value="Нет".... выбросить, все операции обрабатывать в функции по событию onsubmit. То есть в примере вместо return confirm(), нужно указать имя функции - return myFunction(). Если все ОК, то будет отправка, если нет, функция должна вернуть false.
Если началась отправка формы, никакие щелчки по кнопке, тем более вашей, не остановят ее. | |
|
|
|
|
|
|
|
для: sim5
(13.06.2010 в 22:46)
| | Скажите, а как сделать, чтоб высакивало окошко "Клиент не выбран", если не выбрана ни одна радиокнопка (самый верхний пример)? | |
|
|
|
|
|
|
|
для: sim5
(13.06.2010 в 22:09)
| | Скажите, а как сделать, чтоб высакивало окошко "Клиент не выбран", если не выбрана ни одна радиокнопка (самый верхний пример)? | |
|
|
|
|
|
|
|
для: netas
(13.06.2010 в 23:02)
| | Проверять значение группы радиокнопок. Все это делается посредством JavaScript (другой раздел форума). | |
|
|
|