2017-10-07 8 views
0

테이블 내에서 편집 할 수있는 텍스트 상자를 만듭니다. 그러나 표 셀의 값에 공백이 있으면 텍스트 상자에 첫 번째 공백까지의 문자로만 나타납니다. 디버깅에서 cellsContent [i] .innerText는 올바른 값을 갖지만 editableTaskCells [i] .firstChild.value는 올바르지 않습니다.Whiteshpace에서 InnerText 잘림

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)' />"; 
    } 

답변

0

Nevermind. 입력 문에서 값을 따옴표로 깜박입니다. 멍청한 실수. 그것은이어야합니다

editableTaskCells[i].innerHTML = '<input type="text" size="10" value= "' + 
cellsContent[i].innerText + '"></input>';