2012-03-23 3 views
0

여기에 게시하기에는 너무 긴 $ .getJSON 호출이 있습니다. 그것은 div를 숨기려고 할 때를 제외하고는 모두 잘 작동합니다. 내 데이터가 콜백의 데이터베이스에서 "데이터"로 되돌아오고 콜백에서 "for"루프 (증분으로 "i"가있는)에서 처리됩니다. 내 데이터는 모두 다른 곳에 표시됩니다. 그러나 이것을 시도 할 때 :JQuery : 다이나믹하게 지정된 ID로 div를 숨기는 방법

var div = '#row' + data[i].id; 
$(div).hide(); 

실패합니다.

"data [i] .id"를 데이터베이스의 행 번호로 바꿀 수 있으며 div가 숨겨져 있습니다. div에 경고하면 "# row664"또는 무엇이든 표시됩니다. "#row"와 동적으로 생성 된 ID의 조합에 의해 숨김이 실패하고 있습니다.

같은 콜백의 HTML은 :

html = '<div id="row' + data[i].id + '">'; 

되는 HTML 콜백은 끝에 DIV에 추가된다. 내가 말한 것처럼 다른 모든 것은 효과가있다. 그래서 이것이 효과가있는 것처럼 보입니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

새로운 div를 추가 한 다음 숨기려고합니까? –

+0

예. 하드 코드 된 행 번호를 사용하지만 json이 아닌 경우이 작동합니다. – sehummel

+0

오히려 나는 HTML을 추가하고 그것의 일부를 숨기고있다. – sehummel

답변

1

div를 숨기 전에 추가했는지 확인하십시오.

var div = '#row' + data[i].id; 
var html = '<div id="' +div+ '">'; 
$('body').append(html); 
$(div).hide(); 
+0

완벽합니다. 고마워, 조니. – sehummel

관련 문제