сброс jquery после () - PullRequest
       22

сброс jquery после ()

1 голос
/ 07 мая 2011

есть ли способ сбросить / обновить элемент after()?Не добавлять еще один after() текст.Спасибо

Ответы [ 4 ]

0 голосов
/ 01 мая 2016

Может быть, это будет полезно.

(функция контроллера для освобождения формы, отправляемой сервером. Идентификатор входного параметра формы Родительский DIV формы, вывод 1-true, 0-false)

 function emptynessCntrl(elementosForControl){
      var controlResult=1;
        $(elementosForControl).find('input').each(function() {
            if($(this).val().trim()===""){
              controlResult=0;
              console.log($(this).attr('id')+' Element is empty');
              $(this).nextAll().remove();
              $(this).after('<div class="err-label">'+$(this).attr('placeholder')+' is empty</div>');
              return controlResult;
              } 
              else{
                $(this).nextAll().remove();
              }        
           });
        return controlResult;
       }
0 голосов
/ 07 мая 2011

Ваш вопрос не ясен. Я предполагаю, что вы хотите изменить элемент, добавленный с .after()

Вместо этого:

$("#elem1").after('<div id="after />");

Вы можете сделать это (используйте insertAfter)

$('<div id="after" />').insertAfter("#elem1").attr("width", 200).html("hi") ...;

Надеюсь, это поможет. Приветствия.

0 голосов
/ 07 мая 2011

Когда вы добавляете элемент, дайте ему имя

var newElement = $('<span>Some new stuff</span>');
$('.whatever').after(newElement);

Затем, когда вы хотите изменить его, просто сначала удалите предыдущий

newElement.remove();
newElement = $('<div>And now for something completely different</div>');
$('.whatever').after(newElement);

Вы можете написать функцию, которая использует .data() для запоминания нового элемента как такового: (хотя я бы немного изменил имена)

$.fn.addUniqueSomething = function (content) {
    var existing = this.data('something-that-was-already-added');
    if (existing) {
        existing.remove();
    }

    var something = $(content);
    this.after(something);
    this.data('something-that-was-already-added', something);
};

Тогда вы можете использовать

$('.whatever').addUniqueSomething('<span>Some new stuff</span>');
// and later...
$('.whatever').addUniqueSomething('<div>And now for something completely different</div>');

А второй заменит первый

0 голосов
/ 07 мая 2011

Есть ли после параметра обратного вызова?Если это так, вы можете использовать это для вызова функции с тем, что вы хотите сделать.

...