Прототипна алтернатива на replaceWith на jQuery

Имам малък раздел с малко съдържание, което е заменено с ajax. Аз обаче съм ограничен до прототип:

function ajaxCartUpdateShippingNotice( productId ) {
    var aj = new Ajax.Request("/hint/block/index?id=" + productId, {
        method: "GET",
        onComplete: function( result ) {
            $( "#delivery--notice" ).replace( result );
        }
    });
};

Моето HTML съдържание е нещо подобно:

<div id="delivery--notice">
    <p>Some content here.</p>
</div>

и знам, че мога да направя с jQuery; има ли начин да направите това с прототип?

$( selector ).replaceWith( html );

person ash    schedule 21.08.2015    source източник


Отговори (1)


Направо от документацията:

Element.replace

Element.replace(element[, newContent]) → Element

Заменя element себе си с newContent и връща element.

Както при повечето неща PrototypeJS, той също е достъпен като метод за елементи:

Element#replace

Element#replace([newContent]) → Element

Заменя element себе си с newContent и връща element.

person T.J. Crowder    schedule 21.08.2015
comment
Опитах това: Не работи :S Ще актуализирам въпроса си, за да покажа как го правя. - person ash; 21.08.2015
comment
@Ash: $ на прототипа е фундаментално различен от $ на jQuery. Необходим е id, а не селектор. Така че премахнете #: $( "delivery--notice" ).replace( result ); Ако ще работите в Prototype, струва си да се отдръпнете и да прочетете добре документите. Прототипът не е базиран на набор като jQuery, така че използването му е доста различно. - person T.J. Crowder; 21.08.2015
comment
Това е вярно, благодаря, че го посочихте. Няма да работя с прототип толкова често, въпреки това дори не забелязах # там. - person ash; 24.08.2015