2012-05-18 1 views
0

this 예제 다음에 한 페이지에 여러 개의 회전식 구조를 만들려고합니다.
가 나는 foreach 루프 내 회전 목마를 생성하고, 나는 등 이름 C0, C1, C2를, 회전 목마 각각에 할당 이제
(각 회전 목마가 <div>이다), 예에 따라 스크립트를 실행하기 위해, 나는 각 회전 목마 위에서 따로 따로 가야한다. 내 회전 목마가 foreach 루프에서 생성되기 때문에다른 매개 변수를 사용하여 루프에서 jQuery 함수 호출

<script type="text/javascript"> 
    $(document).ready(function() { 

     $('#c0').jsCarousel({ onthumbnailclick: function(src) { alert(src); }, autoscroll: true, masked: false, itemstodisplay: 3, orientation: 'v' }); 
     $('#c1').jsCarousel({ onthumbnailclick: function(src) { alert(src); }, autoscroll: false, masked: false, itemstodisplay: 5, orientation: 'h' }); 
     $('#c2').jsCarousel({ onthumbnailclick: function(src) { alert(src); }, autoscroll: true, masked: true, itemstodisplay: 5, orientation: 'h' }); 

    });  

</script> 

, 나는 내가 가지고 얼마나 그들 중 많은 알 수 없다, 그래서 for 루프에서 함수를 호출하려고 :

for (int i = 0; i < counter; i++) 
    { 
     string cNum = "#c" + i.ToString();%> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       $(cNum).jsCarousel({ onthumbnailclick: function(src) { alert(src); }, autoscroll: true }); 
      }); 
     </script> 
    <%} %> 
예를 들어

내가 확인했는데 cNum 값이 괜찮 으면 # c0, # c1 등의 값을 얻지 만 처음에는 '# c0'등과 동등한 것으로 인식 할 수 없습니다.

어떻게 동적 회전식 이름을 함수에 삽입 할 수 있습니까?

답변

1

대신 각 div에 클래스를 지정하십시오. 이처럼 :

$(".someClassThatIKnowIsACarousel").jsCarousel({ onthumbnailclick: function(src) { alert(src); }, autoscroll: true }); 
+0

훌륭한 솔루션! 많은 감사 !!! :) – user990635

0

코드에서 문제가 동적으로 생성 된 자바 스크립트 섹션 내부 cNum는 ASP 변수로 해석되지 않는 것입니다 :

<div class="someClassThatIKnowIsACarousel"> 

은 그럼 당신은 루프가 필요하지 않습니다. $('<% cNum %>')과 같은 것으로 고칠 수 있습니다 (자바 스크립트 따옴표에도 유의하십시오. $(#c0)을 얻지 않아도 오류가 발생합니다).

그러나 접근 방법이 잘못되었으므로 서버/클라이언트 코드를 혼합 할 수있는 최상의 방법은 피하십시오. 아퀴나스는 이미 지적한 바와 같이

는 가장 좋은 방법은 div의에 클래스를 추가하는 것입니다

HTML :

<div class="carousel"> 

자바 스크립트 :

$('div.carousel').jsCarousel({ ... });