2016-03-08 62 views
2

中顯示,當我嘗試在tr下面添加多選時它顯示[object Object]。對象對象在td

var counter = 0; 
$("#addjs").click(function() { 
    var anotherselect = $('#s1').clone(); 
    anotherselect.attr('id', "s1" + counter); 
    $('tr').last().after("<tr><td></td> <td>" + anotherselect + "</td> <td> third row</td> <td>test</td> <td></td> </tr>"); 
    $("#s1" + counter).dropdownchecklist(); 
    counter++; 
}); 

它工作,如果我不喜歡下面

var counter = 0; 
$("#addjs").click(function() { 
    var anotherselect = $('#s1').clone(); 
    anotherselect.attr('id', "s1" + counter); 
    $('tr').last().after(anotherselect); 
    $("#s1" + counter).dropdownchecklist(); 
    counter++; 
}); 

我需要用TR和TD追加沒有的翻譯:錯誤

+1

'anotherselect'是一個對象,但是你把它作爲一個字符串,並將拼接'+'它調用'anotherselect.toString()'是' 「Object對象」'。使用jQuery加上'anotherselect'與'的append()'或類似 –

+0

還是我得到同樣的錯誤 – vijaikarthik

+0

我想你需要'$(anotherselect).VAL()'在HTML添加 –

回答

1

這是很難確定,不知道什麼元素anotherselect代表,但你應該能夠使用.get()outerHTML處理的事實,你真的連接字符串:

var counter = 0; 
$("#addjs").click(function() { 
    var anotherselect = $('#s1').clone(); 
    anotherselect.attr('id', "s1" + counter); 
    $('tr').last().after("<tr><td></td> <td>" + 
    // change just this part 
    anotherselect.get(0).outerHTML + 
    "</td> <td> third row</td> <td>test</td> <td></td> </tr>"); 
    $("#s1" + counter).dropdownchecklist(); 
    counter++; 
}); 

jQuery的.get()方法會給你實際的DOM元素anotherselect代表和outerHTML將序列化,所以你可以將其包含在您的標記的字符串。