Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сделать код функцией и вызвать её в другой функции. (https://javascript.ru/forum/misc/50285-sdelat-kod-funkciejj-i-vyzvat-ejo-v-drugojj-funkcii.html)

light 19.09.2014 19:08

Сделать код функцией и вызвать её в другой функции.
 
Столкнулся с проблемой, есть данные которые должны добавлять ajax-ом.
И есть много кода, который должен работать, но при добавлении ajax-ом он работает, только если его поставить непосредственно в код вызова ajax.
Например есть такой код и он срабатывает на все элементы, кроме нового, который создастся потом:
$('.thumblink, .circleDiv').hover(function(){	 
	$('#th'+$(this).attr("data-id")+').css("display","block");
},function(){
	$('#th'+$(this).attr("data-id")+').hide();
});


$('#ddd111').click(function(){
	$.ajax({  
		type: "POST",  
		data: "id="+$('#idtest').val()+"",
		url: "http://"+window.location.hostname+"/include/ajax/test.php",  
		success: function(hhhh){     
			$('#li'+hhhh.cat).append("<div id='th"+hhhh.id+"' data-idl='"+hhhh.id+"' data-id='"+hhhh.number+"' class='thumb'>2</div>");	
			
			
		}  					
	});		 
});


Но на созданный
<div id='th"+hhhh.id+"' data-idl='"+hhhh.id+"' data-id='"+hhhh.number+"' class='thumb'>2</div>
этот код работать не будет.
Что бы он заработал, нужно этот код влепить прямо туда:

$('#ddd111').click(function(){
	$.ajax({  
		type: "POST",  
		data: "id="+$('#idtest').val()+"",
		url: "http://"+window.location.hostname+"/include/ajax/test.php",  
		success: function(hhhh){     
			$('#li'+hhhh.cat).append("<div id='th"+hhhh.id+"' data-idl='"+hhhh.id+"' data-id='"+hhhh.number+"' class='thumb'>2</div>");	
				
			$('.thumblink, .circleDiv').hover(function(){	 
				$('#th'+$(this).attr("data-id")+').css("display","block");
					},function(){
				$('#th'+$(this).attr("data-id")+').hide();
			});		
			
		}  					
	});		 
});

Но кода ОЧЕНЬ много, можно ли как то, такой код сделать глобальной функцией, и просто прописать вызов в ajax?

light 19.09.2014 20:18

Не актуально, нашел как с этим бороться)


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