suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript – Frage zum Einfügen von HTML mit nativem JS

Fehlermeldung: Uncaught TypeError: Fehler beim Ausführen von „insertBefore“ auf „Node“: Parameter 1 ist nicht vom Typ „Node“.

Ich möchte die Zeichenfolge nach dem entsprechenden tr verketten, wenn die addChild-Methode ausgelöst wird. Wie soll ich addChild schreiben?

-----Update

Vielen Dank an alle Freunde, die geantwortet haben, das Problem ist gelöst, ich habe die Methode im ersten Stock angewendet

给我你的怀抱给我你的怀抱2766 Tage vor1114

Antworte allen(3)Ich werde antworten

  • 高洛峰

    高洛峰2017-06-26 11:00:39

    第一个参数要求是Dom节点不是字符串

    试试 insertAdjacentHTML

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-26 11:00:39

    tpl是个字符串,不是一个node对象,所以报错;
    你可以利用事件冒泡,把addChild方法写在tr或者tbody上(依据是否是每个tr都需要这个方法),
    然后利用event对象的target属性来找到对应的tr,然后进行后面操作就可以了;

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-26 11:00:39

    报错信息很明显了,tpl是一个字符串,不是一个node元素

    https://developer.mozilla.org...

    你得把字符串转成dom

    比如类似这样的函数,来讲字符串转成dom,代码仅做参考

    var toElement = (function(){
            var p = document.createElement('p');
            return function(html){
                p.innerHTML = html;
                var el = p.firstChild;
                return p.removeChild(el);
            };
        })();

    Antwort
    0
  • StornierenAntwort