2013-10-21 1 views
1

우선, 숨겨진 10 개의 div가 있고 "modal1", "modal2", "modal3"등의 ID가 있다고 가정 해 봅시다. Ajax 요청을 사용하여 반환 된 데이터는 다음과 같습니다. ID 번호는 7이라고 말할 수 있습니다.JQuery와 Eval

이전 작업에서는 javascript eval 함수를 사용했지만 작동하지 않습니다. 수신 된 데이터를 올바른 모달 div에 추가하고 싶습니다.

var newdataobj = JSON.parse(newdata); 
var ResponseDiv = "#modal" + newdataobj.ID; 
$(eval(ResponseDiv)).append(newdataobj.DataToAdd); 

이것은 작동하지 않으며이 시점에서 스크립트가 작동을 멈 춥니 다. 또한 JQuery 버전의 eval을 사용해 보았지만 그 중 하나는 작동하지 않았습니다.

+0

A [바이올린]을 제공하십시오 (http://jsfiddle.net/). –

+3

왜'eval'이 필요한가요? –

답변

2

ResponseDiv은 이미 원하는 내용이 포함 된 문자열입니다.
eval을 전혀 원하지 않습니다.

6

당신은 $(ResponseDiv).append(newdataobj.DataToAdd);

ResponseDiv 이미 문자열이고 그 당신이 선택에 필요한 무엇을 사용, 여기에() 평가를 사용할 필요가 없습니다.

은 당신이 올바른 ID를 확인하기 위해이 시도 :

var newdataobj = JSON.parse(newdata); 
var ResponseDiv = "#modal" + newdataobj.ID; 
alert(ResponseDiv); // or console.log(ResponseDiv); - to doublecheck you have the right ID 
$(ResponseDiv).append(newdataobj.DataToAdd);