我有一个html字符串:
var form = "<form><label >1</label><label >2</label></form>";
现在我想要使用顶级使用jquery在表单中添加另一个标签:
var $form = $(form).find('form').prepend('<label >3</label>');
console.log('$form is ');
console.log($form);
jsfiddle是here。但是正如你从输出中看到的那样,它没有被添加,因为没有找到表单。这怎么可能?
答案 0 :(得分:0)
来自jQuery.find上的文档:
获取当前匹配元素集中每个元素的后代,由选择器,jQuery对象或元素过滤。
在这种情况下,<form>
是顶级元素。您的查找失败,因为没有标签名称为格式的后代。
由于您已将表单元素分配给变量form
,因此您可以将代码更改为:
$(form).prepend('<label >3</label>')
这将导致:
<form>
<label>3</label>
<label>1</label>
<label>2</label>
</form>