Je crée une zone de texte pour l'éditer dans une table. Toutefois, s'il y a des espaces dans la valeur de la cellule de tableau, elle apparaît dans la zone de texte sous la forme de caractères uniquement jusqu'au premier espace rencontré. À partir du débogage, cellsContent [i] .innerText a la valeur correcte, mais editableTaskCells [i] .firstChild.value ne l'est pas.Troncature de InnerText à 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)' />";
}