none
Chamar imagem dinamicamente via jquery e mvc4 RRS feed

  • Pergunta

  • Pessoal, hoje peguei esse html para colocar na página e veio assim, chumbado as imagens a serem carregadas.

    <div class="banner-principal">
            <div class="slides">
                <ul>

                    <li><a href="" title=""><img src="@Url.Content("~/Images/background-header-02.jpg")" alt="" /></a></li>
                     @*<li><a href="" title=""><img src="~/Images/background-header-02.jpg" alt="" /></a></li>*@
                     @*<li><a href="" title=""><img src="~/Images/background-header-03.jpg" alt="" /></a></li>*@
                </ul>
            </div>
        </div>
    Eu fiz uma função jquery para ficar passando a imagem dinamicamente de um link. Pego no banco a referência e depois eu monto na minha URL a chamada. Como eu faço isso? Abaixo a minha jquery e o método na minha controller para buscar do BD.

    JQUERY:
    function ListaBanners() {

                $("#BannerMioloG").html("");

                $.ajax({
                    url: '/Home/ListaBanners',
                    dataType: "json",
                    contentType: "application/json; charset=utf-8",
                    type: "POST",
                    success: function (data) {

                        $(data.Result).each(function () {

                            if (this.Tipo == "s") {
                                $("#BannerPrincipal").append('<a href="#" title="' + this.Nome + '"><img src="' + this.Caminho + this.Imagem + '" alt="' + this.Nome + '" /></a>');
                            }

                            if (this.Tipo == "mg")
                            {
                                $("#BannerMioloG").append('<a href="#" title="' + this.Nome + '"><img src="'+ this.Caminho + this.Imagem + '" alt="' + this.Nome + '" /></a>');              
                            }

                            if (this.Tipo == "mp") {
                                $("#BannerMioloP").append('<a href="#" title="' + this.Nome + '"><img src="' + this.Caminho + this.Imagem + '" alt="' + this.Nome + '" /></a>');
                            }
                        });
                        processoSliderBanner();
                       
                    },
                    error: function (error) {
                       
                    }
                });
            }
    Tudo que vem do tipo mp e mg, funcionam. Só as do tipo s é que não funciona e o código postado é desse tipo.

    Meu método na CONTROLLER:

    [HttpPost]
            public JsonResult ListaBanners()
            {
                AgaxturCmsEntities db = new AgaxturCmsEntities();
                try
                {
                    var Result = (from a in db.TB_BANNERS
                                  where a.Ativo == 1 && DateTime.Now >= a.DataInicial.Value && DateTime.Now <= a.DataFinal.Value
                                    select new {
                                        
                                       a.Caminho
                                       ,a.Nome
                                       ,a.Imagem
                                       ,a.Tipo
                                    
                                    }).ToList();

                     return Json(new { Result }, JsonRequestBehavior.AllowGet);
                
                }
                catch (Exception ex)
                {
                    return Json(new { Result = ex.Message }, JsonRequestBehavior.AllowGet);
                }     
            }

    Como eu faço isso?
    quarta-feira, 26 de fevereiro de 2014 15:45