.prepend не является функцией

Пожалуйста, рассмотрите следующий пример кода:

     $(document).ready(function(){ $("#btn1").click(function(){ var btn = document.createElement("BUTTON"); btn.prepend("Prepended text. "); }); });    

This is a paragraph.

Вышеприведенный код вызывает ошибку в консоли, например:

btn.prepend не является функцией

Почему эта ошибка возникает? Пожалуйста, предложите решение. Спасибо

    Пожалуйста, любезно не следует за изделиями низкого качества из W3Schools. Для вашего решения:

    • btn не является объектом jQuery. Это HTMLElement элемент JavaScript.
    • Функция .prepend() является функцией jQuery.

    Ваш код теперь должен быть:

     $(document).ready(function(){ $("#btn1").click(function(){ var btn = $(this); btn.prepend("Prepended text. "); }); }); 

    Рабочий fragment

     $(document).ready(function(){ $("#btn1").click(function(){ var btn = $(this); btn.prepend("Prepended text. "); }); }); 
      

    This is a paragraph.

    Ошибка появляется, потому что createElement() возвращает DOMElement, у которого нет метода append() ; это доступно только для объектов jQuery. Вам нужно либо обернуть DOMElement в объект jQuery, либо, еще лучше, создать элемент в jQuery:

     $("#btn1").click(function(){ var btn = $(''); btn.prepend("Prepended text. "); // add the btn to the DOM somewhere... });