JQuery-创建元素并将其连接到其他html

JQuery - Create element and concatenate it to other html

本文关键字:连接 其他 html 创建 元素 JQuery-      更新时间:2024-06-08

在代码var check = $($.parseHTML("<input type='"checkbox'" />")[0]);中,我想知道为什么:

  • check.html()为空字符串
  • check[0]<input type="checkbox"></input> AND
  • check[0] + 'test'就是"[object HTMLInputElement]test"

我想知道我必须做什么才能获得<input type="checkbox"></input>test

check将是一个围绕<input type="checkbox" />元素的jQuery包装器。因此,它不包含其他元素,因此check.html()返回""。请记住,.html()返回元素内部的东西,而不是元素本身。

所有jQuery包装器都是类似列表的;在这种情况下,列表只有一个元素(即input),它位于check[0]

check[0] + 'test'

意思是"将字符串添加到此input元素"。照原样,这毫无意义,因此使用input的字符串表示("[object HTMLInputElement]")。

如果您想在元素后面添加字符串"test",则需要将该元素添加到DOM中,然后在之后附加字符串

$('#somecontainer').append(check).append("test");

只需放下parseHTML

$('<input type="checkbox" />')  // Gives you an array of new elements
$('<input type="checkbox" />')[0] // The new input element

从那里。。。不要连接HTML。将元素插入到它们应该位于的位置。否则,如果在HTML上下文中使用文本,您可能会遇到转义问题。