2013-04-26 129 views
1

我有一個名爲setColor()的函數,它創建一個元素並將其作爲jquery對象返回。現在,當我嘗試使用返回值(這是我從v=setColor().get(0)得到),如果我本身追加v,這很好,但是當我用這個:jquery對象get()返回[對象HTMLInputElement]

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

我得到[object HTMLInputElement]插入代替。我究竟做錯了什麼 ?

+0

你爲什麼期望有什麼不同? 'get(0)'從jQuery集合中抓取DOM元素,這似乎是一個輸入字段。你想要什麼'v'? – elclanrs 2013-04-26 04:52:03

+0

我想要它插入HTML源代碼@elclanrs – 2013-04-26 04:53:13

+3

然後,您需要在jQuery對象上使用'html()'或DOM元素上的'innerHtml' ... – elclanrs 2013-04-26 04:54:19

回答

2

你試圖元素轉換爲在這方面的字符串。試試這個。

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

v.html()將返回內部HTML的jQuery對象

+3

* inner * HTML。 – 2013-04-26 04:56:11

+0

@AustinBrunkhorst謝謝回答編輯。 – 2013-04-26 04:57:23

0

Get()返回jquery對象。 所以要麼你需要使用HTML()方法的innerHTML

v.html() 

or 

v.innerHTML; 
0

嘗試

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

.append()可以接受任何的htmlStringElementjQuery,但不能同時使用兩者的結合。

+0

感謝您的澄清 – 2013-04-26 05:14:15