2012-09-25 3 views
0

표가 n 개의 행을 가지며 8 번째 및 9 번째 셀이 편집 가능한 테스트 필드입니다. Javascript와 HTML DOM을 사용하여이 필드의 값을 추출해야합니다. 다른 방법을 시도했지만 경고 할 때마다 경고 내용으로 & nbsp 또는 아무것도 얻지 못합니다. 다음Javascript에서 표의 텍스트 필드 값을 추출 할 수 없습니다.

생성 문입니다 :

//Input Fields 
for(var i=1; i<=mmrows.length-3; i++) 
{//mmrows is the source 
    var input1 =document.createElement('input'); 
    var input2 =document.createElement('input'); 
    input1.setAttribute("type", "Text"); 
    input2.setAttribute("type", "Text"); 
    //input1.id='Inp1'.concat(i);// Tried to assign ID dynamically 
    //input2.id='Inp2'.concat(i); 
    input1.id='Inp1'; 
    input2.id='Inp2'; 
    input1.onkeypress=function(){ 
     return isNumberKey(arguments[0]); 
    }//for validation 

    var t1=document.createElement("td"); 
    t1.appendChild(input1); 
    valrows[i+1].cells[8].appendChild(t1); 
    var t2=document.createElement("td"); 
    t2.appendChild(input2); 

    valrows[i+1].cells[9].appendChild(t2); 
} 

내가 다른 함수의 값을 추출하기 위해 노력하고 노력하고 다음

var cells=document.getElementsByTagName('td'); 
alert(cells.length); 
alert(cells[8].innerText); 
alert(cells[8].innerHTML); 

alert(trim(valrows[i].cells[8].innerHTML)); 
alert(trim(valrows[i].cells[9].innerHTML)); 

var str='Inp1'.concat(i); 
var str1='Inp2'.concat(i); 
alert(document.getElementsById(str).value); //Dynamic ID 
alert(document.getElementsById(str1).value); 

var tblcells = valrows[i].cells; 
alert(tblcells); 
for(var j=0; j<tblcells.length; j++) 
{ 
    alert(tblcells[j].firstElementChild.value); 
} ​ 

I가 중위하기 위해 필요한 변화를 알려주세요 텍스트 필드 값을 가져옵니다.

+0

jQuery를 사용하지 않는 이유에 대한 합리적인 설명이 있습니까? –

+0

우리 JSM 코드와 함께 SPM 도구를 사용하고 있기 때문에 제 개발은 자바 스크립트입니다 ... – Neethusha

+0

jsFiddle? 또는 http://codepen.io/ "New Pen"을 시도하십시오. – EricG

답변

0

나는 이것을 해결했습니다! 사실 그것은 혼자서 실수였습니다. getElement (s) ById - 필요 없음을 말하여 텍스트 값에 액세스하려고했습니다.

그래서 나는 'id'를 루프 변수 i를 사용하고 유사한 루프에서 getElementById를 사용하여 동적으로 이러한 텍스트 셀에 할당 할 수있었습니다.

감사합니다.

관련 문제