#ajax #jquery-ui #jquery
#ajax #jquery-пользовательский интерфейс #jquery
Вопрос:
у меня есть страница, загруженная через jquery tabs ajax, у меня есть форма на этой странице, на которую я хочу отобразить ответ формы через ajax. ответ загружается из этого кода:
$('#whois').submit(function() {
$.ajax({
data: $('#whois').serialize(),
cache:false,
type: "POST",
url: $('#whois').attr('/lib/domainchecker.php'),
success: function(response) {
$('#reply').html(response);
}
});
return false;
);
но моя форма отправляется на родительскую страницу вместо /lib/domainchecker.php . итак, я вижу заголовки своей страницы вместо ответа!
есть идеи, из-за чего это происходит?
Ответ №1:
Когда вы загружаете контент на страницу через AJAX и вам нужно применить события к загруженному контенту, вам нужно использовать jquery live().
$('#whois').live('submit', function() {
$.ajax({
data: $('#whois').serialize(),
cache:false,
type: "POST",
url: $('#whois').attr('/lib/domainchecker.php'),
success: function(response) {
$('#reply').html(response);
}
});
Это, конечно, происходит на главной странице хоста, а не на странице загруженного содержимого.
Комментарии:
1. и никаких изменений в результате, ничего не изменилось с этой заметкой
Ответ №2:
проблема решена, ничего не связано с загрузкой страницы через ajax, но произошла ошибка с кодом, я не должен отправлять в $ (‘#whois’).attr(‘/lib/domainchecker.php ‘) но просто ‘/lib/domainchecker.php ‘
исправленный код:
$('#whois').live('submit', function() {
$.ajax({
data: $('#whois').serialize(),
cache:false,
type: "POST",
url: '/lib/domainchecker.php',
success: function(response) {
$('#reply').html(response);
}
});