2013-03-26 62 views
0

我想用jQuery在窗體中插入元素。在窗體中引入元素

爲此,我克隆元素,更改屬性並插入,然後使用.html()將jquery對象轉換爲HTML對象,但不起作用。

function addInput(divName){ 
    var selector= $('#tipoProducto').clone(); 
    selector.attr('name', counter); 

    var newdiv = document.createElement('div'); 
    newdiv.innerHTML = "<li>porcentaje " 
     + (counter + 1) 
     + "</li><li>\ 
     <input type='text' name='myInputs[]'></li>\ 
     <li>Ingediente Activo" 
     + (counter + 1) 
     + "</li><li>" 
     + selector.html() 
     + "</li>"; 
    document.getElementById(divName).appendChild(newdiv); 
    counter++; 
} 
+3

它不起作用?你有錯誤嗎?有什麼意外的事情發生?什麼都沒有發生? – 2013-03-26 16:51:28

+0

看看這個問題,它會指向你正確的方向:http://stackoverflow.com/questions/867916/creating-a-div-element-in-jquery – Ulises 2013-03-26 16:54:27

+0

@ COC611你爲什麼要添加所有的代碼那不是原始問題的一部分? – Ulises 2013-03-26 16:55:45

回答

4

對於這一點,我會克隆元素更改屬性和插入,然後使用 的.html()對jQuery對象轉換爲HTML對象,但不工作。

您不必這樣做。你可以做這樣的事情,而不是更一般:

var div = $('<div><ul><li>X</li><li>Y</li></ul></div>'); 
$(div).appendTo($('#' + divName)); 

無需使用html(),DOM代碼等這樣的。事實上,你應該這樣做,因爲jQuery的DOM操作快捷鍵是99.99%的跨瀏覽器(製造商和版本),而標準的DOM調用可以在舊版本的IE中不同。