2011-05-16 2 views
1

일부 검색을 수행했는데 이것이 작동해야한다고 생각하지만 틀렸어. 함수 내에서 Ajax 관리자를 사용하고 있습니다.JQuery가 요소를 찾을 수없는 선택기로 Span Id를 전달합니다.

내 JS :

function makeGetRequest2(wordId,docId) { 
    var ajaxManager = $.manageAjax.create('cacheQueue', { queue: true, cacheResponse: true }); 
    //and add an ajaxrequest with the returned object 
    ajaxManager.add({ success: function(html) { 
      $('span[id="' + docId + '"]').text(' - Downloaded ' + html + ' time(s)'); 

     }, url: '/knb/GoogleAnalytic?docId=' + wordId 
    }); 

} 

내 HTML은 XSL에 의해 생성됩니다. 여러 레코드를 반복하여 테이블에 나열합니다. 번역, html로 1 개 기록이 조각과 같습니다

"... Download File <img alt="download" border="0" style="margin:0px 0px; padding:0px;" src="page_white_put.png"> 
<script type="text/javascript">makeGetRequest2(escape('Title 2'),'book-3'); </script> 
<span id="book-3"></span>.. " 

아이디어는 아약스 전화를하고, span 태그 안에 결과를 출력하는 것입니다. span id는 가변적이며 (1부터 - 많은 레코드가 있지만) makeGetRequest2 함수에 전달됩니다.

변수 (예 : $ [ 'span [id = "book-3"]')를 사용하지 않고 selector를 사용하려고하면 ajax가 성공합니다. 그러나 나는 어떤 이유로 "+ docId +"로 찾지 못합니다. 매개 변수에 올바른 값이 있는지 확인했습니다. 대신

답변

4

:

$('span[id="' + docId + '"]') 

당신은 사용해야

$('span#' + docId) 
+0

이 공식적으로 어디서나 문서화, 감사합니다? 나는 다른 포럼에서 첫 번째 형식을 얻었고 묻는 사람은 그것이 효과가 있다고 말했다. : ( – Yun

+0

당신이 사용하고있는 것은 속성을 사용하여 선택하는 일반적인 방법이며 또한 작동해야하지만'id'와'class'는 요소를 선택하는 주된 원인입니다. 그래서 그들은 그것들의 특정한 표기법을 가지고 있습니다. 따라서 CSS에서는 ID에'$ ('my_id')'를 사용해야하고 CSS 클래스에는'$ ('. my_class')'를 사용해야합니다. 다음은 기본 선택기 http : //api.jquery에 대한 설명서입니다. co.kr/카테고리/selectors/basic-css-selectors / – morgar

관련 문제