Динамическая форма

wbrframe

Новичок
Динамическая форма

Подскажите пжл возможное решение.

Задача была след: при щелчке на div, содержимое блока должно заменятся на <input type="text">
при чем до клика та цыфра которая была в блоке, должна появлятся в value. Вообщем динамическое редактирование. При нажатии на Enter <input type="text"> исчезает и остается только введенная цыфра. Также должна сработать ajax функция (она в коде не прописана так как с этим проблем нет).
PHP:
 <script language="javascript">

  function editOrder(id, order_pro) {
  	var obj = document.getElementById("block_" + id);

  	obj.innerHTML = "<input id='text_"+ id +"' type='text' size='4' value='" + order_pro + "'  onkeypress='eventEnter(" + id + ", event, this);  return false;' />";

  	document.getElementById("text_" + id).focus();
  }
  
   function eventEnter(id, event, formElem) {
  	var objblock = document.getElementById("block_" + id);
  	var objtext = document.getElementById("text_" + id);
  	
  	if(event.keyCode == 0xD) {
  	 objblock.innerHTML = objtext.value;
  	}
  } 

 </script>
Код впринципе не сложный, всё работает. Только есть одна проблема, при создании таким образом <input type="text"> ввести новые данные я не могу. Символы не печатаются.
 

maxwell

artifex
weregod, аякс-функции, аякс-переменные, аякс-операторы и операнды.
 

dimka-747

Новичок
Есть динамическая форма загрузки файлов. При выборе файла добавляется ещё одно поле для добавления файла....и так до 10шт.
Форма размечена табличкой и в этом проблема.
ПРОБЛЕМА: При добавлении нового элемента input средствами JS и привязке его к ячейке таблицы table_td.appendChild(new_input_file) этот новоиспеченный элемент не заносится в массив $_POST[ ]. (table_td - ячейка таблицы)
При добавлении же элемента и привязке его к форме form.appendChild(new_input_file) - все работает. Но форма на столько сложна (кроме файлов ещё много елементов) что без таблицы ее разметить ровно - будет сложной задачей.
Хотелось бы найти решение, оставив разметку таблицей.
 

dimka-747

Новичок
спасибо, решил. Надо было просто влаживать форму в таблицу а таблицу в форму. Так:
<form ....>
<table......>
 
Сверху