2010-11-01 2 views
0

У меня есть следующий скрипт; Проблема заключается в том, что я могу использовать скрипты JQuery внутри загруженного файлазагрузить проблему jquery внутри загруженного файла

index.html

<html> 
<head> 
<title>Ajax with jQuery Example</title> 
<script type="text/JavaScript" src="jquery.js"></script> 
<script type="text/JavaScript"> 
$(document).ready(function(){ 
$.ajax({ 
    url: 'ajax/test.html', 
    success: function(data) { 
    $('#wrapper').html(data); 
    } 
}); 

    $("A").click(function(){ 
    alert("test inside loaded file"); 
    }); 

}); 
</script> 
</head> 
<body> 
<div id="wrapper"> 
</div> 
</body> 
</html> 

Аякса/test.html

<A HREF="document2.html" TABINDEX="4">test alert</A> 

проблемы он не даст предупреждение, когда я нажимаю на загруженном файле

ответ

1

Чтобы связать событие со всеми элементами, которые соответствуют текущему селектору, теперь и в будущем, вам необходимо использовать live(), а не click().

http://api.jquery.com/live/

1

использование

$("A").live("click", function(){ 
    alert("test inside loaded file"); 
}); 
+0

CD избили меня до этого :) – baruch

2

Попробуйте изменить следующую строку:

$("A").click(function(){ 
    alert("test inside loaded file"); 
    }); 

в

$("A").live('click',function(){ 
    alert("test inside loaded file"); 
    }); 

Используя метод Live() йо u привязывается ко всем <a> тегам сейчас и в будущем, используя .click() только привязывается к соответствующим элементам, которые в настоящее время существуют.

+0

Это работает. У меня была аналогичная проблема. - благодаря! – cocacola09

Смежные вопросы