Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Подскажите please c проверкой полей формы (https://javascript.ru/forum/dom-window/35968-podskazhite-please-c-proverkojj-polejj-formy.html)

Antmike 27.02.2013 19:07

Подскажите please c проверкой полей формы
 
Товарищи специалисты!
Помоги решить проблему и двинуться дальше в разработке:

Есть форма (все та же блин форма):

создаются динамически блоки с 3-мя инпутами.
Пример кода:
<div id="container_address_points">
<div id="point_0" class="point">
<label>Заезд</label>
<div class="input-append">
<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
</div>
</div>
<div id="point_1" class="point">
<label>Заезд</label>
<div class="input-append">
<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
</div>
</div>
......
</div>


в блоке с id="container_address_points" может быть создано максимум 3 блока с id="point_[x]"

Как добраться до всех инпутов в каждом динамически созданном блоке (атрибуты инпутов остаются неизменными).
Это нужно для проверки: были ли созданы данные блоки и заполнены ли они. А так же: если в них есть введенный текст, необходимо его "уложить" в отдельный скрытый инпут на странице - для передачи методом post

Буду очень благодарен, помощи и советам

ksa 27.02.2013 20:08

Цитата:

Сообщение от Antmike
были ли созданы данные блоки

Как вариант...

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
$(document).ready(function(){
	$('button').click(function(){
		alert('Всего блоков - '+$('.point').length);
	});
});
</script>
</head>
<body>
<div id="container_address_points">
	<div id="point_0" class="point">
		<label>Заезд</label>
		<div class="input-append">
			<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
			<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
			<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
		</div>
	</div>
	<div id="point_1" class="point">
		<label>Заезд</label>
		<div class="input-append">
			<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
			<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
			<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
		</div>
	</div>
</div>
<button>test</button>
</body>
</html>

Antmike 27.02.2013 20:15

Спасибо всем, кто обратил внимание.
Тема закрыта. Вопрос решен

ksa 27.02.2013 20:16

Цитата:

Сообщение от Antmike
заполнены ли они

Как это понять?
Во всех инпутах что-то есть?

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
$(document).ready(function(){
	$('button').click(function(){
		var o=$('.point');
		alert('Всего блоков - '+o.length);
		o.each(function (i){
			var oi=$(this).find('input:text');
			var o=oi.filter(function (){
				return this.value!='';
			});
			if (o.length!=oi.length) {
				alert('В блоке '+i+' не заполнены поля '+(oi.length-o.length)+'шт.')
			};
		});
	});
});
</script>
</head>
<body>
<div id="container_address_points">
	<div id="point_0" class="point">
		<label>Заезд</label>
		<div class="input-append">
			<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
			<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
			<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
		</div>
	</div>
	<div id="point_1" class="point">
		<label>Заезд</label>
		<div class="input-append">
			<input name="address_point_tpl" id="address_point_tpl" class="span8 autocomplete address ac_input" type="text" placeholder="улица" value="" autocomplete="off">
			<input name="house_point_tpl" id="house_point_tpl" class="span1 house" style="width:45px" type="text" placeholder="дом" value="">
			<input name="case_point_tpl" id="case_point_tpl" class="span1 case" style="width:60px" type="text" placeholder="корпус" value="">
		</div>
	</div>
</div>
<button>test</button>
</body>
</html>


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