0
Ich erstelle ein Textfeld zum Bearbeiten innerhalb einer Tabelle. Wenn der Wert der Tabellenzelle jedoch Leerzeichen enthält, wird er in der Textbox nur als Zeichen bis zum ersten Leerzeichen angezeigt. Beim Debugging hat cellsContent [i] .innerText den korrekten Wert, editableTaskCells [i] .firstChild.value jedoch nicht.Trunkierung von InnerText bei Whiteshpace
function editTask(row) {
// make array of current contents of cells
var cellsContent =
document.getElementById("taskTable").rows[row].cells;
// delete row
document.getElementById("taskTable").deleteRow(row);
// make new row
var newRow = document.getElementById("taskTable").insertRow(row);
// make an array for editable cells of new row
var editableTaskCells = [];
// fill contents of new row with editable contents of deleted row
for (var i = 0; i < 7; i++) {
editableTaskCells[i] = newRow.insertCell(i);
if (i < 5) {
editableTaskCells[i].innerHTML = "<input type='text'
size='10' value= " + cellsContent[i].innerText + "></input>";
documnet.writeln(cellsContent[i].innerText;
document.writeln(editableTaskCells[i].firstChild.value); // for debugging purposes
}
}
// add edit and remove buttons
editableTaskCells[5].innerHTML = "<input type='button' class='btn btn-success' id='editButton' value='Save Edit' onclick='saveEditedTask(this.parentNode.parentNode.rowIndex)'/>";
editableTaskCells[6].innerHTML = "<input type='button' class='btn btn-danger' id='removeButton' value='REMOVE' onclick='removeTask(this.parentNode.parentNode.rowIndex)' />";
}