Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Генерация формы по клику на ссылку (https://javascript.ru/forum/dom-window/35763-generaciya-formy-po-kliku-na-ssylku.html)

makc9I 21.02.2013 14:52

Генерация формы по клику на ссылку
 
Всем привет.
Задача такова: Есть таблица с 7 строками, дни недели: понедельник..воскресение, в каждой строке есть столбец с неким текстом, при клике на который должна выползать форма.

Форма подобного вида:

<form action="<?=$_SERVER["PHP_SELF"]?>" method="POST">
		Введите ФИО:<hr>
			Место 1:<input type="text" name="seat1"><br> 
			Место 2:<input type="text" name="seat2"><br> 
			Место 3:<input type="text" name="seat3"><br> 
			Место 4:<input type="text" name="seat4"><br> 
		
		Выберите пункт назначения:<hr>
			<select name="destination">
				<option>Вологда</option>
			</select><br>
		
		Введите время:<hr>
			<select name="hour">
				<option>7</option>
				<option>8</option>
				<option>9</option>
				<option>10</option>
				<option>11</option>
				<option>12</option>
				<option>13</option>
				<option>14</option>
				<option>15</option>
				<option>16</option>
				<option>17</option>
				<option>18</option>
			</select>
			
			<select name="minute">
				<option>00</option>
				<option>15</option>
				<option>30</option>
				<option>45</option>
			</select><br>
		
		
			
			
		<input type="submit" value="Подать заявку">
	</form>

Важно то, что в базу надо записать данные из 1ого столбца данной строки, где лежит дата. Как это лучше сделать? Сама эта дата доступна в формате timestamp как переменная php.

Я новичек в javascript, думал с ходу реализовать данный функционал на jquery, вроде должно быть наглядней и проще, но что-то после прочтения учебника так и не смог понять, как это сделать.

makc9I 21.02.2013 14:54

Вложений: 1
для наглядности приложил скриншот таблицы, кликать надо на текст заказать.

ksa 21.02.2013 15:24

Цитата:

Сообщение от makc9I
для наглядности приложил скриншот таблицы

Для пущей наглядности нужно делать хтмльный тестовый пример, на котором покажут как можно сделать...

makc9I 21.02.2013 15:42

ну вообще таблица генерится средствами php, вот листинг функции(убрал из нее проверки на вставку классов для наглядности).
А хтмл формы я выкладывал выше
function ShowCurrentWeek($caption, $Day) {
		echo "<table >\n\r ";
			echo "<caption>".$caption."</caption>\n\r";
			$todayIndex = date("N");
			for ($i=1; $i<=7; $i++) {
			
				$DayName = GetNameOfDay($i);
				$date = date("d m Y",$Day). "<br>". $DayName ;
				$dayIndex = date("N", $Day);
				
				echo "<tr>\n\r";
				
					echo "\t<td width='100'>";
					echo $date. "</td>\n\r";
					echo "\t<td>". "машины" . "</td>\n\r";
					echo "\t<td>". "заказать" . "</td>\n\r";
					
				echo "</tr>\n\r";
				$Day = strtotime("+1 day", $Day);
			}
		echo "</table>";
	}

ksa 21.02.2013 15:49

Цитата:

Сообщение от makc9I
ну вообще таблица генерится средствами php

Да мне то что с того? :D

Цитата:

Сообщение от makc9I
А хтмл формы я выкладывал выше

Таки напрягись! Сделай полный хтмл пример... Или это нам нужно делать? :blink:

makc9I 21.02.2013 16:04

Таблица:
<caption>Текушая неделя</caption>

<tr class='past'>

	<td class = 'past' width='100'>18 02 2013<br>Понедельник</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

<tr class='past'>

	<td class = 'past' width='100'>19 02 2013<br>Вторник</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

<tr class='past'>

	<td class = 'past' width='100'>20 02 2013<br>Среда</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

<tr class='today'>

	<td class = 'today' width='100'>21 02 2013<br>Четверг</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

	<td class = 'usual' width='100'>22 02 2013<br>Пятница</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

<tr class='holliday'>

	<td class = 'holliday' width='100'>23 02 2013<br>Суббота</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

<tr class='holliday'>

	<td class = 'holliday' width='100'>24 02 2013<br>Воскресение</td>

	<td>машины</td>

	<td>заказать</td>

</tr>

</table>


Форма:
<form action="<?=$_SERVER["PHP_SELF"]?>" method="POST">
		Введите ФИО:<hr>
			Место 1:<input type="text" name="seat1"><br> 
			Место 2:<input type="text" name="seat2"><br> 
			Место 3:<input type="text" name="seat3"><br> 
			Место 4:<input type="text" name="seat4"><br> 
		
		Выберите пункт назначения:<hr>
			<select name="destination">
				<option>Вологда</option>
			</select><br>
		
		Введите время:<hr>
			<select name="hour">
				<option>7</option>
				<option>8</option>
				<option>9</option>
				<option>10</option>
				<option>11</option>
				<option>12</option>
				<option>13</option>
				<option>14</option>
				<option>15</option>
				<option>16</option>
				<option>17</option>
				<option>18</option>
			</select>
			
			<select name="minute">
				<option>00</option>
				<option>15</option>
				<option>30</option>
				<option>45</option>
			</select><br>
		
		
			
			
		<input type="submit" value="Подать заявку">
	</form>

ksa 21.02.2013 16:16

Цитата:

Сообщение от makc9I
Таблица

Это не таблица... :nono:

ksa 21.02.2013 16:18

makc9I, ты смотрел к/ф Кавказская пленница?
Так вот там отлично учили танцевать. :D Сначала одной ногой... Потом другой... А теперь обеими ногами одновременно!

Т.е. пример нужен не из огрызков, а полностью. :D

makc9I 21.02.2013 16:48

я не понимаю, в чем проблема то? Я скинул весь листинг сгенерированной таблицы, скинул форму, какую хочу получить динамически средствами JS, что еще то скинуть?
Вот это?
<!DOCTYPE html>
<html lang="ru">

<head>
	<meta charset="utf-8" />
	<title>Заказ машин</title>
	<link rel="stylesheet" href="css/style.css" />
</head>
<body>
....таблица....
</body>
</html>

рони 21.02.2013 18:01

makc9I,
так и непонял чего вы хотите, как то неукладывается дата, таблица, форма.если вам нужен клик на определённых ячейках таблицы чтоб вылезла форма спрятанная то причём тут дата и запись в базу.


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