2016-07-13 2 views
1

Вот мой скрипт слайдера загрузить изображение из JqueryКак получить мульти выбора рекламных носителей в Jquery в Umbraco

<script type="text/javascript"> 
     $(window).load(function() { 

      @{ 
       var galleryList = Model.Content.GetPropertyValue<string>("images").Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse); 
       var galleryCollection = Umbraco.TypedMedia(galleryList).Where(x => x != null).ToString(); 
      } 

      var i = 0; 
      var images = @galleryCollection; 
      //var images = ['/Images/Image1.jpg', '/Images/Image2.jpg', '/Images/Image3.jpg', '/Images/Image4.jpg']; 
      var image = $('#slideit'); 
      //Initial Background image setup 
      image.css('background-image', 'url(/Images/image1.jpg)'); 
      //Change image at regular intervals 
      setInterval(function() { 
       image.fadeOut(0, function() { 
        image.css('background-image', 'url(' + images[i++] + ')'); 
        image.fadeIn(0); 
       }); 
       if (i == images.length) 
        i = 0; 
      }, 5000); 
     }); 
    </script> 

который возвращает меня ошибка: незавершенный шаблон буквальных

вар изображение = System. Linq.Enumerable + WhereEnumerableIterator`1 [Umbraco.Core.Models.IPublishedContent];

Я знаю, что это неправильный способ получить изображения из umbraco в jquery. но я не знаю альтернативного пути.

ответ

1

Это должно быть что-то вроде этого:

@using System.Web.Script.Serialization 

<script type="text/javascript"> 
    $(window).load(function() { 

     @{ 
      var galleryList = Model.Content 
            .GetPropertyValue<string>("images") 
            .Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries) 
            .Select(id => int.Parse(id)); 

      var galleryCollection = Umbraco.TypedMedia(galleryList) 
              .Select(m => m.Url); 
     } 

     var i = 0; 
     var images = @(Html.Raw(new JavaScriptSerializer().Serialize(galleryCollection))); 

     ... //the rest of your code 
    }); 
</script> 
+0

он показывает мне сообщение об ошибке: Тип или пространство имен имя «JavaScriptSerializer» не может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку?) –

+0

Вам нужно добавить '@using System.Web.Script.Serialization' (первая строка в ответе), я думаю, вы забыли это. –

Смежные вопросы