2012-12-05 3 views
2

은 내가 slideshow in jquery의 좋은 예를 발견 한 뒤에하지만 이미지 경로는 다음과 같이 주어진다 :바인딩 컬렉션

(function($){ 

    $.fn.kenburns = function(options) { 
     .................. 

     var images = []; 
     ................... 
    }}); 
다음 JS에서

<script type="text/javascript"> 
     $(function() { 
      $('#kenburns').kenburns({ 
       images: ['http://farm5.static.flickr.com/4088/4967743590_8e1cbba701_b.jpg', 
         'http://farm5.static.flickr.com/4130/4967739638_edfdb0a52b_b.jpg', 
         'http://farm5.static.flickr.com/4126/4967708868_5625c200bd_b.jpg' 
         ], 
         frames_per_second: 30, 
         display_time: 7000 
          ........ 
            }); 
         }); 

    </script> 

그것은 다음과 같습니다 파일

그래서 내가 원하는 유사한 List<string> 또는 string[] 또는 뭔가 뒤에 코드에서 이미지 소스를 제공하는 것입니다. 이미지는 디스크에 저장되며 데이터베이스에서 해당 경로를 가져옵니다.

이 할 수있는 방법이 있나요? 또는 이것을 해결하기위한 더 나은 접근법이 있습니까? 첫 번째 자바 스크립트 블록 인 경우

string[] myImageUrls = new string[] { "image1.jpg, image2.jpg" }; 
var serializer = new JavaScriptSerializer(); 
string myJavaScriptArray = serializer.Serialize(myImageUrls); 

이 예는 지금 당신에게 문자열 ["image1.jpg","image2.jpg"]

을 제공 : 다음과 같이

감사

답변

1

당신은 자바 스크립트 배열 선언에 C#을 문자열 배열을 설정할 수 있습니다 당신의 ASPX 페이지에서 인라인, 당신은 당신의 코드 숨김 예에 속성으로이 문자열을 넣을 수 있습니다

<script type="text/javascript"> 
    $(function() { 
     $('#kenburns').kenburns({ 
      images: <%= ImageUrlArray %>, 
      frames_per_second: 30, 
      display_time: 7000 
      ........ 
     }); 
    }); 
</script> 

<%= ImageUrlArray %>은 재산의 값으로 대체, 당신은 장소에 배열로 끝날됩니다 다음과 같이

protected string ImageUrlArray { 
    get { 
     return new JavaScriptSerializer() 
      .Serialize(getImageUrlArrayFromDatabase()); 
    } 
} 

다음은 스크립트 블록을 "포함".

+0

은 완벽하게 작동합니다. 고맙습니다. 나는 JavaScriptSerializer 부분을 몰랐다. :) 감사 – bokkie