Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не срабатывает функция (https://javascript.ru/forum/misc/16170-ne-srabatyvaet-funkciya.html)

badvanek 29.03.2011 01:44

Не срабатывает функция
 
Доброго времени суток :help:
создаю елемент
$('#bookmarks').click(function(e)
				{
					$('#mark_block').remove();
					$('<div id="mark_block"></div>')
						.css('top',e.pageY+10)
						.css('left',e.pageX+10)
						.appendTo('body');
					
					$('<p style="margin:0;"></p>') 
						.appendTo('#mark_block');
						
					$('<b>Введите название </b>') 
						.appendTo('#mark_block p');
						
					$('<input type="text" size="12" />')
						.attr('id','new_mark') 
						.appendTo('#mark_block p');
						
					$('<input type="button" name="submit" value="Сохранить"/>') 
						.attr('id','mark_but') 
						.appendTo('#mark_block p');
				});


после этого не работает такая функция
$('#mark_but').click(function()
				{
					alert('Hello');
				});

и CSS
#mark_block{
		width: 300px;
		border:#333333 2px solid;
		padding: 3px;
		background-color: #4F5155;
		font-family: "Times New Roman", Times, serif;
		font-size: 12px;
		font-style: italic;
		font-weight: bold;
		color: white;
		position: absolute;
}

... и это один из примеров подскажите где я туплю
Спасибо

рони 29.03.2011 10:25

badvanek,
Используйте live() или назначайте клик после создания елемента
$('#mark_but').live('click', function() {
  alert('Hello');
});


или
$('#bookmarks').click(function(e)
				{
					$('#mark_block').remove();
					$('<div id="mark_block"></div>')
						.css('top',e.pageY+10)
						.css('left',e.pageX+10)
						.appendTo('body');
					
					$('<p style="margin:0;"></p>') 
						.appendTo('#mark_block');
						
					$('<b>Введите название </b>') 
						.appendTo('#mark_block p');
						
					$('<input type="text" size="12" />')
						.attr('id','new_mark') 
						.appendTo('#mark_block p');
						
					$('<input type="button" name="submit" value="Сохранить"/>') 
						.attr('id','mark_but') 
						.appendTo('#mark_block p');

$('#mark_but').click(function()
				{
					alert('Hello');
				});
				});

badvanek 29.03.2011 10:41

Спасибо помогло...ну я и баранко:-?


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