Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Кнопка Submit

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
dembi
Отправлено: 13 Июня, 2010 - 14:15:00
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Апр. 2009  


Помог: 0 раз(а)




Привет всем.

Мне нужно, чтобы в моей форме была кнопка «Изменить» со свойством «type="button"». При нажатие на эту кнопку она должна менят свое имя на «Сохранить» и поля для вода текста должны устанавливать значение «readonly = false» + тип кнопки должны меняется на type="submit", чтобы при нажатие уже на кнопку «Сохранить» данные были отправлены на сервер для последующей обработки.

Ниже мой код. Но, к сожалению, мой код не работает. Пожалуйста, подскажите, где я ошибаюсь.
PHP:
скопировать код в буфер обмена
  1.  
  2. function ChangeValue() {
  3.     var position = ["maneg"]
  4.     for (var i = 0; i < position.length; i++) {
  5.         document.getElementsByName(position[i]+"_tel")[0].readOnly = false;
  6.     }
  7.     var but = document.getElementById("Save");
  8.  
  9.     if (but.value == "Изменить") {
  10.         but.value = "Сохранить";
  11.         but.type = "submit";
  12.     }
  13.     if (but.value == "Сохранить") {
  14.         but.value = "Изменить";
  15.         but.type = "button";
  16.     }
  17. }

PHP:
скопировать код в буфер обмена
  1.  
  2. <form method="post" id="form">
  3.  
  4. <table border="1" width="25%" rules="all" frame='border'>
  5. <hr size="0" NOSHADE />
  6.  
  7. <td>Менеджер</td>
  8. <td><?PHP
  9. $gmsu_project = "SELECT name, tel, mob, fax, email FROM contacts where user_id = 1 and contact_gmsu = 0 and position_id = 1";
  10.  $rows_gmsu_project = DB_Connect::get_rows($gmsu_project);
  11.  if ($rows_gmsu_project != FALSE) {
  12.     foreach ($rows_gmsu_project as $row) {?>
  13.        <input type="text" name="maneg_name" maxlength="20" size="10" id="change"value="<?PHP echo $row['name'];?>" readonly/> <br/>
  14.       тел: <input type="text" name="maneg_tel" maxlength="20" size="10" id="change"value="<?PHP echo $row['tel'];?>" readonly/> <br/>
  15.       моб: <input type="text" name="maneg_mob" maxlength="20" size="10" id="change"value="<?PHP echo $row['mob'];?>" readonly/> <br/>
  16.      факс: <input type="text" name="maneg_fax" maxlength="20" size="10" id="change"value="<?PHP echo $row['fax']; ?>" readonly/> <br/>
  17.       Email: <input type="text" name="maneg_email" maxlength="20" size="10" id="change"value="<?PHP echo $row['email'];?>" readonly/>
  18.      <?PHP }}
  19. ?></td>
  20. </tr>
  21.      <table border="0" width="75%" align="center" rules="all" frame='border' >
  22.       <tr>
  23.           <td align="right"><input id ="Save" class="submit" value="Изменить"name="change" type="button" onclick="ChangeValue()"/></td>
  24.        </tr>
  25.  </table>
  26. </form>


Заранее спасибо.
 
 Top
SAD
Отправлено: 13 Июня, 2010 - 14:29:20
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Во первых id - это уникальный идентификатор. а у вас он у нескольких полей одинаков.
 
 Top
dembi
Отправлено: 13 Июня, 2010 - 14:33:28
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Апр. 2009  


Помог: 0 раз(а)




SAD пишет:
Во первых id - это уникальный идентификатор. а у вас он у нескольких полей одинаков.


Я изменил значение id для каждого поля на уникальный:

PHP:
скопировать код в буфер обмена
  1. <input type="text" name="maneg_name" maxlength="20" size="10" id="change_name" value="<?PHP echo $row['name'];?>" readonly/> <br/>
  2.                     тел: <input type="text" name="maneg_tel" maxlength="20" size="10" id="change_tel" value="<?PHP echo $row['tel'];?>" readonly/> <br/>
  3.                     моб: <input type="text" name="maneg_mob" maxlength="20" size="10" id="change_mob" value="<?PHP echo $row['mob'];?>" readonly/> <br/>
  4.                     факс: <input type="text" name="maneg_fax" maxlength="20" size="10" id="change_fax" value="<?PHP echo $row['fax']; ?>" readonly/> <br/>
  5.                     Email: <input type="text" name="maneg_email" maxlength="20" size="10" id="change_email" value="<?PHP echo $row['email'];?>" readonly/>


Но мою проблему это не решает ((((
 
 Top
SAD
Отправлено: 13 Июня, 2010 - 14:46:42
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Посмотрите, что делает Ваша функция, она сомтрит, если value="изменить", то тратата.
она это делает. значит value уже равно "сохранить", а далее что происходит
value уже имеет значение "сохранить" и она опять меняет на "изменить"
надо сделать дополнительное условие
 
 Top
dembi
Отправлено: 13 Июня, 2010 - 14:52:52
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Апр. 2009  


Помог: 0 раз(а)




SAD пишет:
SAD


Можно какой-то пример, пожалуйста ???
 
 Top
SAD
Отправлено: 13 Июня, 2010 - 15:05:12
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




еще одна проблема, при смене type у кнопки на submit, форма автоматически отравляется.
может проще по onclick вызывать функцию которая сама отправит форму? а не менять тип кнопки на submit?

(Отредактировано автором: 13 Июня, 2010 - 15:08:25)

 
 Top
dembi
Отправлено: 13 Июня, 2010 - 15:07:43
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Апр. 2009  


Помог: 0 раз(а)




SAD пишет:
SAD


Согласен, что форма сабмиться при смену type на submit.

Как можно решить данную задачу?
 
 Top
SAD
Отправлено: 13 Июня, 2010 - 15:12:20
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Я суть понял, сейчас набросаю
(Добавление)
CODE (html):
скопировать код в буфер обмена
  1. <html>
  2. <head>
  3. <script>
  4. function ChangeValue() {
  5.  
  6.   var dd = document.getElementsByTagName('input');
  7.   for(var i=0; i < dd.length - 2; i++)
  8.    document.getElementById(dd[i].id).readOnly = false;
  9.  Change.style.display = 'none';  
  10.  Save.style.display = '';  
  11. }
  12.  
  13. function SaveValue() {
  14.  
  15.  document.form.submit();
  16. }
  17. </script>
  18. </head>
  19. <body>
  20. <form method="post" id="form" name="form">
  21. <table border="1" width="25%" rules="all" frame='border'>
  22. <hr size="0" NOSHADE />
  23. <td>Менеджер</td>
  24. <td>
  25. <input type="text" name="maneg_name" maxlength="20" size="10" id="change_name" value="wdwd" readonly> <br/>
  26. тел: <input type="text" name="maneg_tel" maxlength="20" size="10" id="change_tel" value="34535345" readonly> <br/>
  27. моб: <input type="text" name="maneg_mob" maxlength="20" size="10" id="change_mob" value="32434" readonly> <br/>
  28. факс: <input type="text" name="maneg_fax" maxlength="20" size="10" id="change_fax" value="34234" readonly> <br/>
  29. Email: <input type="text" name="maneg_email" maxlength="20" size="10" id="change_email" value="e@ya.ru" readonly>
  30. </td>
  31. </tr>
  32. </table>
  33. <table border="0" width="75%" align="center" rules="all" frame='border' >
  34. <tr>
  35. <td align="right">
  36. <input id ="Change" class="submit" value="Изменить" name="change" type="button" onclick="ChangeValue()"/>
  37. <input id ="Save" class="submit" value="Сохранить" style="display: none" name="save" type="button" onclick="SaveValue()"/>
  38. </td>
  39. </tr>
  40. </table>
  41. </form>
  42. </body>
  43. </html>


обрати внимание на каждую деталь, на все изменения

(Отредактировано автором: 13 Июня, 2010 - 15:40:50)

 
 Top
JustUserR
Отправлено: 14 Июня, 2010 - 12:46:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




dembi пишет:
Согласен, что форма сабмиться при смену type на submit.
В HTML существуют два различных элемента это button и input type="submit" которые являются соврешенно разными тегами и обладают разной функциональонстью - первый из них является кнопкой для JS-обработки а второй является элементом формы Если вам реально нужно заменить один из них на другой то используйте DOM-модель - создаете новый элемент input и заменяете им старый через parentNode.replaceChild и устанавливаете ему соответствующее имя и JS-обработчики


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB