Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Редактирование таблицы с фронтенда (https://javascript.ru/forum/dom-window/31103-redaktirovanie-tablicy-s-frontenda.html)

ratrat 27.08.2012 09:09

Редактирование таблицы с фронтенда
 
Доброго времени суток! Подскажите пожалуйста в реализации такой идеи: Есть таблица с данными, как в екселе, внутри ячейки кнопочка Edit, когда на неё нажимаешь, то появляется окошко для редактирования, где можно изменить или отменить. Всё сохраняется тут же на сервере, и отображается. Скрипт на php. Сейчас он у меня только отображает данные, по событию можно выплюнуть окошко.
Как это сделать? Я новичок, подскажите в какой стороне смотреть, куда копать. Не прошу вас написать код (хотя было бы неплохо для анализа), но подтолкните куда смотреть, какие тут технологии (AJAX как понимаю) использовать.

Deff 27.08.2012 10:11

ratrat,
Ну ежели на JQ, то наверно GET запрос(ежели в ячейке данных не километр) http://jquery-docs.ru/Ajax/jQuery.ge...tacallbacktype

dawsonsky 28.08.2012 15:27

Самый простой вариант без jquery(может и не сработать, подумайте почему):
<script type="text/javascript">
			function update(cell) {
				var id = cell.id;
				var value = cell.childNodes[1].value; // Может не сработать
				// Отправляете запрос на сервер
			}
</script>

<form action="" method="post">
			<table>
				<tr>
					<td id="1">
						<input type="text" />
						<input type="submit" value="edit" onClick="update(this.parentNode); return false;">
					</td>

				</tr>
			</table>
</form>

Slavenin 29.08.2012 20:20

я делал просто. У каждой строки есть кнопка "редактировать" при нажатии на нее в colorbox открывается форма для редактирования данных. Дальше вариантов два. Можно парсить строку таблицы на которой произошло событие, или же посылать аяксом запрос на сервер за данными и подставлять их в открытую форму. У меня реализовано через аякс, хотя с распарсиванием строки можно обойтись без дополнительно запроса на сервер.


Часовой пояс GMT +3, время: 10:08.