IE AJAX / Jquery проблема - перенаправление на новую страницу вместо загрузки в раздел - PullRequest
0 голосов
/ 09 июня 2010

У меня есть такая страница:

<form class="ajax" method="post" action="add_item.php">
[text input] [submit button]
</form>

[list any items the user has in a div here called #items]

Когда пользователь нажимает кнопку отправки, вызывается такая функция:

$("form.ajax").live('submit', function(event) {
 params = $(this).serialize();
 $.post($(this).attr("action"), params, function(data){
 json = $.parseJSON(data);
 // do stuff based on the json results
  if(json.success.action == 'replace'){
   $(json.success.container).html(json.success.message);
  }
  else{
   $(json.success.container).prepend(json.success.message);
   $(json.success.container).find(".item:first").slideDown();
  }

 });

 event.returnValue = false;
 return false;
});

Предполагается, что файл add_item.php загружается в div #items, и он отлично работает в FF, Chrome, Safari, но не в IE. В IE (проверено 7 и 8), когда я нажимаю Submit, он перенаправляет страницу в add_item.php, а не загружает ее в div #items. Я попытался добавить event.preventDefault (); до конца функции, но это не сработало.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 09 июня 2010

Ха!

Сразу после публикации я нашел исправление для этого: Переместил функцию чуть ниже $ (document) .ready и добавил event.stopPropagation ();

0 голосов
/ 09 июня 2010

меняет метод "live" на "bind"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...