2011-04-29 4 views
1

모든 것을 시도했지만 코드가 작동하지 않습니다. 나는 이유를 모른다. 여기JavaScript : string.replace()가 작동하지 않습니다. 무엇이 문제입니까?

은 다음과 같습니다

var table = $("#cpTableBody").html(); 
$("#cpTableBody").html(''); 

var tmpContent = ""; 
for (i=0; i<cpData.length; i++) { 
    var tmpTable = table; 
    tmpTable.replace(/{firstname}/g, cpData[i].contact_person.firstname); 
    tmpTable.replace(/{lastname}/g, cpData[i].contact_person.lastname); 
    tmpContent += tmpTable; 
} 

$("#cpTableBody").html(tmpContent); 
+0

'; '는 무의미한 재 할당으로 보이고, 첫 번째 루프 반복에서'{firstname} '과'{lastname} '이 대체되고 다른 모든 반복은 아무것도 수행하지 않는다는 것을 의미합니다. 내가 놓친 게 있니? –

답변

6

쉬운 대답은 ... 당신은 ... tmpTable = tmpTable.replace을 설정하지 않을 그래서 같은 : 그래서`VAR tmpTable = 테이블을 변경하지 table`

var tmpContent = ""; 
for (i=0; i<cpData.length; i++) { 
    var tmpTable = table; 
    tmpTable = tmpTable.replace(/firstname/g, cpData[i].contact_person.firstname + ""); 
    tmpTable = tmpTable.replace(/{lastname}/g, cpData[i].contact_person.lastname + ""); 
    tmpContent += tmpTable; 
} 
+1

+1 이것은 실제로 아주 흔한 실수입니다. –

+0

정말 고마워요. 코딩 시간이 8 시간이면 두통이 날 것입니다.) – silent

+0

문제 없습니다. 이 게시물의 체크 표시를 클릭하여 답변으로 표시하는 것을 잊지 마세요 :) 또한 "답변 속도"가 100 %가되어 사람들이 게시하도록 권장하기 때문에이 사이트에서 더 많은 질문을 할 때 도움이됩니다. – pixelbobby

관련 문제