powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (JS) Обновление модального окна ... нужна помощь
4 сообщений из 4, страница 1 из 1
(JS) Обновление модального окна ... нужна помощь
    #33250932
копосов нв
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет! Нужна помощь - из файла запускаю модальную форму
Код: plaintext
1.
2.
3.
4.
function addBoss() {
	result = window.showModalDialog("addBoss.php", "0", "center=yes; scroll=yes; unadorned=yes; help=no; status=no; dialogHeight:340px; dialogWidth:640px")
	window.focus();
}

В модальном окне пытаюсь сделать два действия обновить окно и принять сделать изменения вот примерный код (теги php не рассматривайте):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
<html>
<head>
 <title>Добавление начальника.</title>
 <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<script>
function addRecFlag(myForm) {
         myForm.flagAdd.value= 1 
         myForm.submit;
}

function addLine() {
         c++; // увеличиваем счётчик строк
         a++; // этот счётчик ввожу для контроля удаления строк, последнюю не удаляю
         s=document.getElementById('table').innerHTML; // получаем HTML-код таблицы
         s=s.replace(/[\r\n]/g,''); // вырезаем все символы перевода строк
         re=/(.*)(<tr id=.*>)(<\/table>)/gi; // это регулярное выражение позволяет выделить последнюю строку таблицы
         s1=s.replace(re,'$2'); // получаем HTML-код последней строки таблицы
         s2=s1.replace(/\[\d+\]/gi,'['+c+']'); // заменяем все цифры к квадратных скобках на номер новой строки
         s2=s2.replace(/(rmLine\()(\d+\))/gi,'$1'+c+')');// заменяем аргумент функции rmLine на номер новой строки
         s=s.replace(re,'$1$2'+s2+'$3'); // создаём HTML-код с добавленным кодом новой строки
         document.getElementById('table').innerHTML=s; // возвращаем результат на место исходной таблицы
         return false; // чтобы не происходил переход по ссылке
}

function rmLine(q) {
          if (a== 1 ) {
                  return false;
          } else {
                  a--;
          }// последний (единственный) элемент удалить будет нельзя.
         s=document.getElementById('table').innerHTML;
         s=s.replace(/[\r\n]/g,''); // вырезаем все символы перевода строк
         re=new RegExp('<tr id="?newline"? nomer="?\\['+q+'.*?<\\/tr>','gi'); // это регулярное выражение позволяет выделить строку таблицы с заданным номером
         s=s.replace(re,''); // заменяем её на пустое место
         document.getElementById('table').innerHTML=s;  // возвращаем результат на место исходной таблицы
         return false; // чтобы не происходил переход по ссылке
}
</script>
<style>
.myTd {
 BORDER-RIGHT: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-RIGHT: 5px;
 BORDER-TOP: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-LEFT: 5px; PADDING-BOTTOM: 1px;
 BORDER-LEFT: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-TOP: 1px;
 BORDER-BOTTOM: rgb( 192 , 192 , 192 ) 1px solid
}
.myButton {
 BORDER-RIGHT: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-RIGHT: 5px; BORDER-TOP: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-LEFT: 5px; PADDING-BOTTOM: 1px;
 BORDER-LEFT: rgb( 192 , 192 , 192 ) 1px solid;
 PADDING-TOP: 1px;
 BORDER-BOTTOM: rgb( 192 , 192 , 192 ) 1px solid
}
</style>
</head>
<body lang=RU>
<form name="addBoss" action="addBoss.php" method="post">
<input name="flagAdd" type="hidden" value="0">
<span id="table">
<table align=center border= 0  cellspcing= 0  cellpadding= 0 >
<tr><td align=center><b>ФИО</b></td><td align=center><b>Должность/Замещение</b></td><td>
<font style=cursor:hand title="Добавить?" onclick="return addLine();" color=green><h2><b>+</b></h2></font></a></td></tr>
<?php
 $col =  0 ;
 ReadTXTFiles(getcwd()."\\General\\"); ?>
</table>
</span>
<p align=center>
<input class=myButton type="submit" title="Нажмите кнопку, чтобы сохранить сделанные изменения." onClick="addRecFlag(addBoss)" value="Сохранить">
<input class=myButton type="button" title="Нажмите кнопку, чтобы обновить таблицу." onClick="location.href=location.href; return false" value="Обновить">
<input class=myButton type="button" title="Нажмите кнопку, чтобы закрыть данное окно без сохранения изменений." onClick="window.close()" value="Отмена">
</p>
</form>
<script>
 var c=<?php echo $col;?>; //счётчик количества строк
 a=c;
</script>
</body>
</html>

Когда кликаю на Обновить и Сохранить открывается новое IE окно в котором подгружается файл, как сделать, чтобы все изменения происходили в прежнем модальном окне без открытия новых.
...
Рейтинг: 0 / 0
(JS) Обновление модального окна ... нужна помощь
    #33251303
копосов нв
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JS специалисты почему молчите. Вопрост прост - как обновить модальную форму, или как делать все действия в одном модальном окне?
...
Рейтинг: 0 / 0
(JS) Обновление модального окна ... нужна помощь
    #33251850
VERS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В модальном окне открывать FRAMESET.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
//Сохранит этот файл как frameset.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
 <title>Добавление начальника.</title>
</HEAD>
<FRAMESET rows="0%,100%">
  <FRAME src="about:blank">
  <FRAME src="addBoss.php" name="formframe">
</FRAMESET>
</HTML>
Код: plaintext
1.
2.
3.
function addBoss() {
	result = window.showModalDialog("frameset.html", "0", "center=yes; scroll=yes; unadorned=yes; help=no; status=no; dialogHeight:340px; dialogWidth:640px")
	window.focus();
}

Ну и на последок поменять таргет формы на
Код: plaintext
<form name="addBoss" action="addBoss.php" method="post" target="formframe">
По идее должно помочь.
-------------------------------
www.free-lancer.ru
...
Рейтинг: 0 / 0
(JS) Обновление модального окна ... нужна помощь
    #33252204
копосов нв
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to VERS
Спасибо за решение.
Вместо
Код: plaintext
1.
2.
3.
4.
<FRAMESET rows="0%,100%">
  <FRAME src="about:blank">
  <FRAME src="addBoss.php" name="formframe">
</FRAMESET>
вставил
Код: plaintext
1.
 <iframe src=addBoss.php frameborder= 0  vspace= 0  hspace= 0  width= 100 % height= 100 %  marginwidth= 0   marginheight= 0  vscrolling=yes></iframe>
И всё просто супер. Спасибо!
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (JS) Обновление модального окна ... нужна помощь
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]