Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   есть некая форма... (https://javascript.ru/forum/misc/38378-est-nekaya-forma.html)

iskander83 30.05.2013 00:45

есть некая форма...
 
есть некая форма...
нужно чтоб при ее открытие в классе title менялся текст


<div id="forma_zakaza"><p>Заполните поля ниже и мы свяжемся с Вами:</p> <img class="close_btn" src="images/krestik.png"/>

 <form class="form_order">		 <h1 class="title">пример</h1>
 				<input type="text" name="name" id="name" placeholder="  Ваше имя * "/>	              
				<input type="text" name="phone" id="phone" placeholder="  Телефон * "/>  
                <input type="text" name="comment" id="commen" placeholder="  Дополнительная информация * "/>               
       <img  src="images/otpravit.png" alt="Отправить" title="Отправить"/>
		</form>
 </div>


нужно чтоб при ее открытие в классе title менялся текст,
а его нужно выдергивать из уже сушествующей строки
<p class="name">АртДеко Эсиль2</p> ниже в коде
<div class="bersoni">
 .....
 <div class="wrap_door">
 <p class="name">АртДеко Эсиль2</p>
 <p class="material">Материал:</p><img src="images/katalog/bersoni_door1.png"/>
 <a class="butt"> <img src="images/kupit_butt.png" class="kupit_butt" /></a></div>

почему-то вместо нужного текста блок становится вообще пустым вот скрипт

$(document).ready(function() {
	
	$(".bersoni .butt").on("click",function(){	 show_order_form('Для заказа заполните форму:'); });
	
	var show_order_form = function(text){
	var overlay = $('<div>').attr('id', 'overlay');
	overlay.appendTo(document.body);
	$('#forma_zakaza').center();
	$('#forma_zakaza').show();
	$('.close_btn').bind('click', function() { close_dialog(); });
	$('#overlay').bind('click', function() { close_dialog(); });
	
	 var title;
   
    self=$(this).parents('.wrap_door');
	title= self.find('.name').text();
   
         $('.form_order').find('.title').text(title);

}


не хватает мозгов, что тока не делал уже, помогите друзья...

рони 30.05.2013 01:32

iskander83,
нет у вас никакого this --- строка 15 --
Цитата:

Сообщение от iskander83
self=$(this).parents('.wrap_door');


рони 30.05.2013 01:40

iskander83, лучше нерабочий пример, чем куски кода :write:
Возможный вариант решения ...
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8" />
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
  $(document).ready(function() {
	$(".bersoni .butt").on("click",function(){	 show_order_form('Для заказа заполните форму:',this); });
	var show_order_form = function(text, obj){
	var overlay = $('<div>').attr('id', 'overlay');
	overlay.appendTo(document.body);
   //	$('#forma_zakaza').center();
	$('#forma_zakaza').show();
	$('.close_btn').bind('click', function() { close_dialog(); });
	$('#overlay').bind('click', function() { close_dialog(); });
   var title;
   self=$(obj).parents('.wrap_door');
   title= self.find('.name').text();
   $('.form_order').find('.title').text(title);
}
})

  </script>
</head>
<body>
<div id="forma_zakaza"><p>Заполните поля ниже и мы свяжемся с Вами:</p> <img class="close_btn" src="images/krestik.png"/>

 <form class="form_order">		 <h1 class="title">пример</h1>
 				<input type="text" name="name" id="name" placeholder="  Ваше имя * "/>
				<input type="text" name="phone" id="phone" placeholder="  Телефон * "/>
                <input type="text" name="comment" id="commen" placeholder="  Дополнительная информация * "/>
       <img  src="images/otpravit.png" alt="Отправить" title="Отправить"/>
		</form>
 </div>
 <div class="bersoni">
 .....
 <div class="wrap_door">
 <p class="name">АртДеко Эсиль2</p>
 <p class="material">Материал:</p><img src="images/katalog/bersoni_door1.png"/>
 <a class="butt"> <img src="images/kupit_butt.png" class="kupit_butt" />кликать сюды</a>
 </div>
 </div>
</body>
</html>

iskander83 30.05.2013 01:57

Огромное спасибо рони так все работает...
теперь бы понять разницу, между this и obj

рони 30.05.2013 02:11

Цитата:

Сообщение от рони
$(".bersoni .butt").on("click",function(){ show_order_form('Для заказа заполните форму:',this); });

передаём обьект==this по которому кликнули в функцию show_order_form -- строка 9
а уж как вы переменную назовёте obj или как то иначе, дело ваше -- в строке 10


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