我通过使用JS和Jquery添加行和列来创建表。 这是我的代码:
function AddColumnToDataTable(){
$('#tableHeader').append("<th> Header </th>").attr("contenteditable", true);
// Add a new ColumnHeader and set the property "editable"
}
function AddRowToDataTable(){
var count = $('#tableHeader').find("th").length;
// Get the count of Columns in the table
var newRow = $('#tableBody').append("<tr></tr>");
// Add a new Row
for(var i = 0; i < count ; i++){
newRow.find('tr').last().append("<td> Content </td>").attr("contenteditable", true);
// Fill the cells with a default text and set the property "editable"
}
}
所以我的问题是,如何编写代码,每个单元格是否可编辑?目前,当我点击时,整行可编辑?每个单元都应具有该属性。
我找到了一个可以提供帮助的代码:
//$('table th:nth-child(4)').attr("contenteditable", true)
这使得第4个标题/单元格可以编辑,但是如何使用它,每个新创建的标题/单元格都是第n个孩子?
答案 0 :(得分:0)
jQuery append函数不返回新的[attached]元素,而是返回附加到的元素,因此代码中出现错误。无论如何,只需在追加字符串中手动设置属性即可。所以,改变这一行:
newRow.find('tr').last().append("<td> Content </td>").attr("contenteditable", true);
对此:
newRow.find('tr').last().append("<td contenteditable="true"> Content </td>")
应该这样做
答案 1 :(得分:0)
它适用于
$('table td').last().attr("contenteditable", true);