| 
 | 
	
	
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:12
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Создать кнопку с событием
			 
			
		
		
		
		Доброго времени суток. В JS новичек. Такая проблема хочу создать кнопку, при нажатии на которую создается еще кнопка. Изначально создано две кнопки "Автомат" и "Ручное". При нажатии на Ручное должно создать внизу(под Ручным) кнопку. Вот код 
var a= 0;
   onload = function vizovRuchnoi(){
      if (a == 0) {
          var btn = document.createElement('input');
          btn.id = 'b1';
          btn.type = 'button';
          btn.value = 'Ручное переключение';
          document.body.appendChild(btn);
          document.getElementById('b1').onclick = sozdaemTriKnopki();
          btn.setAttribute('onclick', 'sozdaemTriKnopki');
          var btn1 = document.createElement('input');
          btn1.id = 'b2';
          btn1.type = 'button';
          btn1.value = 'Автоматическое переключение';
          btn1.setAttribute('onclick', 'obj.HandleClick1();');
          document.body.appendChild(btn1);
          a = 1;
      }
   }
var b =0;
function sozdaemTriKnopki(){
   if ( b== 0){
       var btn = document.createElement('input');
       btn.id = 'b1_1';
       btn.type = 'button';
       btn.value = 'Красный11';
       document.body.appendChild(btn);
       b = 1;
   }
}
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:22
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Vladimir93
			
		
	 | 
 
	| 
		 document.getElementById('b1').onclick = sozdaemTriKnopki();11          btn.setAttribute('onclick', 'sozdaemTriKnopki');
	 | 
 
	
 
 или 
btn.onclick = sozdaemTriKnopki;  
или 
document.getElementById('b1').onclick = sozdaemTriKnopki  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:27
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	
		или 
btn.onclick = sozdaemTriKnopki;  
или 
document.getElementById('b1').onclick = sozdaemTriKnopki
	 | 
 
	
 
 Я пробовал и так и так. Оно то кнопку создает, но сразу при загрузку страницу, как будто метод sozdaenTrKnopki вызывается сразу. А надо, чтобы после нажатия мыши. ЧТо не так?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:29
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Vladimir93, 
 сделай как написано выше 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:30
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Vladimir93,
    
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title><meta charset="utf-8">
  <script>
    var a= 0;
   onload = function vizovRuchnoi(){
      if (a == 0) {
          var btn = document.createElement('input');
          btn.id = 'b1';
          btn.type = 'button';
          btn.value = 'Ручное переключение';
          document.body.appendChild(btn);
          btn.onclick = sozdaemTriKnopki;
          var btn1 = document.createElement('input');
          btn1.id = 'b2';
          btn1.type = 'button';
          btn1.value = 'Автоматическое переключение';
         // btn1.setAttribute('onclick', 'obj.HandleClick1();');
          document.body.appendChild(btn1);
          a = 1;
      }
   }
var b =0;
function sozdaemTriKnopki(){
   if ( b== 0){
       var btn = document.createElement('input');
       btn.id = 'b1_1';
       btn.type = 'button';
       btn.value = 'Красный11';
       document.body.appendChild(btn);
       b = 1;
   }
}
  </script>
</head>
<body>
</body>
</html>
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:31
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	
		Vladimir93, 
 сделай как написано выше
	 | 
 
	
 
 Блин. Спасибо. До этого писал только на Java, и там методы вызываются только с (), а здесь не так...  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:32
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Тогда такой вопрос, что в стилях надо указать, чтобы кнопка внизу создалась, а не последовательно в строку... 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 19:48
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Vladimir93,
  
#b1_1{
  display: block;
}
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 20:32
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Рони, можно еще вопрос. Допустим у меня есть две кнопки, идущие в линию. При нажатии на одну создаются 4-ре кнопки внизу в столбец в помощью display: block. А как добавить четвертую не в столбец, а в ту линию, где две первоначальные? 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.11.2014, 20:46
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 08.11.2014 
					
					
					
						Сообщений: 27
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	
		Vladimir93, 
    
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title><meta charset="utf-8">
  <script>
    var a= 0;
   onload = function vizovRuchnoi(){
      if (a == 0) {
          var btn = document.createElement('input');
          btn.id = 'b1';
          btn.type = 'button';
          btn.value = 'Ручное переключение';
          document.body.appendChild(btn);
          btn.onclick = sozdaemTriKnopki;
          var btn1 = document.createElement('input');
          btn1.id = 'b2';
          btn1.type = 'button';
          btn1.value = 'Автоматическое переключение';
         // btn1.setAttribute('onclick', 'obj.HandleClick1();');
          document.body.appendChild(btn1);
          a = 1;
      }
   }
var b =0;
function sozdaemTriKnopki(){
   if ( b== 0){
       var btn = document.createElement('input');
       btn.id = 'b1_1';
       btn.type = 'button';
       btn.value = 'Красный11';
       document.body.appendChild(btn);
       b = 1;
   }
}
  </script>
</head>
<body>
</body>
</html>
	 | 
 
	
 
 кстати, а если в методе будет аргумент, тогда работать не будет?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |