Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.07.2013, 10:49
Интересующийся
Отправить личное сообщение для gait Посмотреть профиль Найти все сообщения от gait
 
Регистрация: 10.05.2013
Сообщений: 15

$(this).remove() не работает на форме с ajaxForm()
Я хочу, чтобы по сабмиту форма самоудалилась. Но это нужно сделать
при срабатывании ajaxForm:

<form class="test-form">
	<button class="test-button">SUBMIT</button>
</form>

$(".test-form").ajaxForm(function() {
	$(this).remove();
});

И почему-то не получается.

Можно сделать так:
$(".test-button").on('click', function() {
	$(this).parent().remove();            
});


Но этот вариант не подходит, нужно сделать удаление именно с ajaxForm.

Еще можно сделать так:
$(".test-form").ajaxForm(function() {
	$(".test-form").remove();
});

И тогда тоже всё пучком, но у меня много форм и мне нужно удалять только ту, где произошел сабмит, то есть нужен $(this), но с ним почему-то удаления формы не происходит?

Последний раз редактировалось gait, 10.07.2013 в 10:54.
Ответить с цитированием
  #2 (permalink)  
Старый 10.07.2013, 10:57
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

а что в консоль падает, ошибок нет?
$(".test-form").ajaxForm(function() {
console.log(this);
    $(this).remove();
});
Ответить с цитированием
  #3 (permalink)  
Старый 10.07.2013, 11:01
Интересующийся
Отправить личное сообщение для gait Посмотреть профиль Найти все сообщения от gait
 
Регистрация: 10.05.2013
Сообщений: 15

ошибок нет, в консоли:
[Object, jquery: "2.0.3", constructor: function, init: function, selector: "", toArray: function…]
Ответить с цитированием
  #4 (permalink)  
Старый 10.07.2013, 11:03
Интересующийся
Отправить личное сообщение для gait Посмотреть профиль Найти все сообщения от gait
 
Регистрация: 10.05.2013
Сообщений: 15

а, это было для console.log($(this));
для console.log(this) выдает вот это:
Object {url: "http://localhost:8080/fileupload/", type: "POST", isLocal: false, global: true, processData: true…}
Ответить с цитированием
  #5 (permalink)  
Старый 10.07.2013, 11:04
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

$('.test-form').submit(function() {
  $(this).remove();
  return false;
});
Ответить с цитированием
  #6 (permalink)  
Старый 10.07.2013, 11:06
Интересующийся
Отправить личное сообщение для gait Посмотреть профиль Найти все сообщения от gait
 
Регистрация: 10.05.2013
Сообщений: 15

Сообщение от animhotep Посмотреть сообщение
$('.test-form').submit(function() {
  $(this).remove();
  return false;
});
Ничего не изменилось
Ответить с цитированием
  #7 (permalink)  
Старый 10.07.2013, 11:07
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

ну а если так:
$(".test-form").ajaxForm(function() {
      $(".test-form").remove();
});
Ответить с цитированием
  #8 (permalink)  
Старый 10.07.2013, 11:08
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

я может не понял чё вам нужно, но формы по клику удаляются
http://codepen.io/anon/pen/pwaLu
Ответить с цитированием
  #9 (permalink)  
Старый 10.07.2013, 11:08
Интересующийся
Отправить личное сообщение для gait Посмотреть профиль Найти все сообщения от gait
 
Регистрация: 10.05.2013
Сообщений: 15

Сообщение от skrudjmakdak Посмотреть сообщение
ну а если так:
$(".test-form").ajaxForm(function() {
      $(".test-form").remove();
});
Так получается, я об этом писал выше, но мне нужен $(this)
Ответить с цитированием
  #10 (permalink)  
Старый 10.07.2013, 11:08
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

мм. па попробуйте в консоль вот так вывести:
$(".test-form").ajaxForm(function() {
console.log($(this)[0]);
});

по идеи должен вернуть dom элемент
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS: работает на сервере, не работает из папки -majestic- Общие вопросы Javascript 2 02.08.2012 14:41
Не работает push! Динамическая вставка TSEH25 ExtJS 5 03.07.2012 13:00
jQyery функция странно работает! Midel Общие вопросы Javascript 4 08.04.2012 13:40
Почему код работает? (обращение к форме из window) Василий Б. Элементы интерфейса 10 21.04.2010 10:10
ajax запросы, работает на одних компах и не работает на других vtornik23 AJAX и COMET 2 22.03.2010 18:22