Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Динамический form action (https://javascript.ru/forum/jquery/22523-dinamicheskijj-form-action.html)

Skyman 23.10.2011 18:51

Динамический form action
 
<form action="post.php" method="get">
   <div class="sel_blocks" id="features">
      <h3>Особенности фигуры:</h3>
      <a href="#" name="1">Маленький рост</a>
      <a href="#" name="2">Высокий рост</a>
      <a href="#" name="3">Правильная осанка</a>
      <a href="#" name="4">Узкие плечи</a>
   </div>
   <input type="submit" />
</form>

$(function() {
	$('#features a').click(function() {
		if($(this).attr('class') == 'selected') {
			$(this).removeAttr('class');
		} else {
			$(this).attr('class', 'selected');
		}
	});
});


Есть форма, в которой присутствуют ссылки, в зависимости, если ссылка выделена, к ней приписывается class="selected".

Помогите пожалуйста составить код, чтобы для всех ссылок, которые имеют атрибут class="selected", бралось значение "name" и вставлялось в form action.


На примере: пользователь выбрал "Маленький рост" и "Правильная осанка", соответственно код будет:
<form action="post.php?features=1,3" method="get">

ksa 23.10.2011 18:53

Цитата:

Сообщение от Skyman
для всех ссылок, которые имеют атрибут id="selected"

ИД на странице должно быть уникальным. Т.ч. начни с того что перейди на class...

ksa 23.10.2011 18:56

Цитата:

Сообщение от Skyman (Сообщение 132433)
На примере: пользователь выбрал "Маленький рост" и "Правильная осанка", соответственно код будет:
<form action="post.php?features=1,3" method="get">

А если "пользователь" начнёт клацать по твоим ссылкам по нескольку раз на каждой? :D

Для такого дела лучше чекбоксы использовать... Тогда и с актион заморачиваться не нужно будет. ;)

Skyman 23.10.2011 19:06

ksa, да, про class согласен.

А если человек повторно нажмет на ссылку, то id удалится, в первом сообщении я же привел код.
$(this).removeAttr('id');

ksa 23.10.2011 19:09

Skyman, ИД не для того нужно использовать... И таки вариант со ссылками ущербен изначально.

Но даже если и так... Формировать экшен нужно в момент отправки, а не при каждом клацании. :)

Skyman 23.10.2011 19:19

ksa, заменил id на class и обновил первый пост.

Я не спорю, что реализация была бы намного проще, если бы использовались чекбоксы, даже JS не понадобился бы.

Но цель стоит именно в реализации через ссылки.
Нетривиальные задачи намного интереснее решать :)

Nekromancer 23.10.2011 19:51

Сделай лейблами, а чекбоксы скрой.

Skyman 23.10.2011 20:16

Nekromancer, сенк, даже как-то не подумал :)

ksa 23.10.2011 20:30

Цитата:

Сообщение от Skyman
Нетривиальные задачи намного интереснее решать

Сначала придумать себе трудности, а потом их мужественно преодалевать! :lol:

Nekromancer 23.10.2011 21:32

Цитата:

Сообщение от ksa (Сообщение 132461)
Сначала придумать себе трудности, а потом их мужественно преодалевать! :lol:

Тут скорее от незнания пытаются придумать что то нелепое.


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