简体   繁体   English

jQuery对象get()返回[object HTMLInputElement]

[英]jquery object get() returns [object HTMLInputElement]

I have a function called setColor() which creates an element and returns it as a jquery object. 我有一个名为setColor()的函数,该函数创建一个元素并将其作为jquery对象返回。 Now when I try to use the returned value ( which I get from v=setColor().get(0) ) if I append v by itself, it's fine, but when I use this : 现在,当我尝试使用返回值(从v=setColor().get(0) )时,如果我自己附加v ,就可以了,但是当我使用此值时:

props.append('<li><span>'+this+'</span> : <span class="property ">'+ v +'</span> </li>');

I get [object HTMLInputElement] inserted instead. 我得到了[object HTMLInputElement]插入。 What am I doing wrong ? 我究竟做错了什么 ?

v.html()将返回jQuery对象的内部html

You're trying to convert an element to a string in that context. 您正在尝试在该上下文中将元素转换为字符串。 Try this instead. 试试这个吧。

props.append('<li><span></span> : <span class="property"></span></li>');
props.find('span').eq(0).append(this);
props.find('.property').append(v);

.append()可以接受htmlStringElementjQuery任何一个,但不能一次使用它们的组合。

Get() returns the jquery object. Get()返回jquery对象。 so either you need to use html() method or innerHTML 因此,您需要使用html()方法或innerHTML

v.html() 

or 

v.innerHTML;

尝试

$('<li><span>' + this + '</span> :  </li>').append($('<span class="property "></span>').append(v)).appendTo(props)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM