Fórum Jquery, Ajax, MVC e Banco de dados com EF e LINQ #471369
26/02/2014
0
[HttpPost]
public JsonResult MontaMenuInstitucional()
{
AgaxturCmsEntities db = new AgaxturCmsEntities();
try
{
var resultado =
(from i in db.TB_INSTITUCIONAL
join c in db.TB_INSTITUCIONAL_CATEGORIAS on i.Id_Categoria equals(c.id)
where i.Ativo == 1 && c.Ativo == 1 && c.CdCliente == 1
select new
{
i.Id_Categoria
,i.Conteudo
,c.Categoria
}).ToList();
return Json(new { resultado }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
return Json(new { Result = ex.Message }, JsonRequestBehavior.AllowGet);
}
}Abaixo minha jquery que não funciona.
function MontaMenuInstitucional() {
$.ajax({
url: '/Home/MontaMenuInstitucional',
dataType: "json",
contentType: "application/json; charset=utf-8",
type: "POST",
success: function (data) {
alert('cheguei ao passo 0');
$(data.Result).each(function () {
alert('cheguei ao passo 1');
if (this.Id_Categoria > 0) {
alert('cheguei ao passo 2');
$("CategoriaInstitucional").append('<li><a href="#" title="' + this.Categoria + '" alt="" /></a></li>');
}
});
//processoSliderBanner();
},
error: function (error) {
}
});
}
Pjava
Curtir tópico
+ 0Posts
27/02/2014
Pjava
function MontaMenuInstitucional() {
$.ajax({
url: '/Home/MontaMenuInstitucional',
dataType: "json",
contentType: "application/json; charset=utf-8",
type: "POST",
success: function (data) {
alert('Passo 0');
var resultSet = $.parseJSON(data.d);
$.each(resultSet, function (key, obj) {
alert('passo 1');
obj.Categoria;
});
},
error: function (error) {
}
});
}Gostei + 0
27/02/2014
Murilo Teixeira
$("CategoriaInstitucional").append('<li><a href="#" title="' + this.Categoria + '" alt="" /></a></li>');Você fecha a Tag <a> duas vezes, primeiro no /> depois no </a>
Você tentou algo mais simples, como simplesmente emitir um alerta com o valor que você quer mostrar pra ver se esta vindo certo?
um alert com o this.Categoria?
Gostei + 0
27/02/2014
Pjava
Esse erro só está acontecendo após eu ter alterado minha função jquery com ajax.
Gostei + 0
27/02/2014
Pjava
if (this.Id_Categoria > 0) {
$("CategoriaInstitucional").append('<li><a href="#" title="' + this.Categoria + '" alt="" /></li>');
}
Abaixo meu código asp.net da tag ul com sua tags li
<ul class="grid_4">
<li>Institucional</li>
@*<li><a href="#" title="">Nossa História</a></li>
<li><a href="#" title="">Linha do Tempo</a></li>
<li><a href="#" title="">Missão e Valores</a></li>
<li><a href="#" title="">Imprensa</a></li>
<li><a href="#" title="">Sustentabilidade</a></li>
<li><a href="#" title="">Trabalhe Conosco</a></li>*@
</ul>
Onde está comentado é que deveria vir do jquery para preencher.
Gostei + 0
27/02/2014
Pjava
function MontaMenuInstitucional() {
$.ajax({
url: '/Home/MontaMenuInstitucional',
dataType: "json",
contentType: "application/json; charset=utf-8",
type: "POST",
success: function (data) {
$(data.resultado).each(function () {
if (this.Id_Categoria > 0) {
$("#CategoriaInstitucional").append('<li><a href="#" title="' + this.Categoria + '" alt="" >' + this.Categoria + '</a></li>');
}
});
},
error: function (error) {
}
});
}<ul class="grid_4" id="CategoriaInstitucional">
<li>Institucional</li>
</ul>Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)