Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

194
Vistas
Agregue el resultado json a div a través de AJAX (ASP.NET MVC)

Tengo una llamada AJAX que funciona y me devuelve JSON

Aquí está la llamada AJAX

 <script> $('#display').click(function () { var vacancyId = $("#vacancy").val(); var model = { vacancyId: vacancyId }; $.ajax({ url: '@Url.Action("QuestionBlocks", "Questions")', contentType: 'application/json; charset=utf-8', data: JSON.stringify(model), type: 'POST', dataType: 'json', processData: false, success: function (data) { $(".list").append('<div>' + data.Question1 + '</div>'); } }); });

Aquí está el lado del servidor

 [HttpPost] public ActionResult QuestionBlocks(int vacancyId) { var items = db.QuestionBlocks .Where(x => x.Interview.VacancyId == vacancyId) .Select(x => new { ID = x.Block_ID.ToString(), Question1 = x.Question1, Question2 = x.Question2, Question3 = x.Question3, Question4 = x.Question4, Question5 = x.Question5, Question6 = x.Question6, Question7 = x.Question7, Question8 = x.Question8, Question9 = x.Question9, Question10 = x.Question10, }) .ToList(); return Json(items, JsonRequestBehavior.AllowGet); }

Devuelve datos como este

{ID: "1087", Pregunta 1: "Расскажите о себе", Pregunta 2: "Háblame de ti",…}

Mi problema en esto - $(".list").append('<div>' + data.Question1 + '</div>'); funciona bien, pero se muestra undefined

¿Porque?

about 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Parece que necesita analizar datos en JSON. Intenta usarlo así:

 $(".list").append('<div>' + JSON.parse(data).Question1 + '</div>');
about 4 years ago · Santiago Trujillo Denunciar

0

Parece que hay una matriz dentro data , así que intente un código de éxito como este:

 $.ajax({ url: '@Url.Action("QuestionBlocks", "Questions")', contentType: 'application/json; charset=utf-8', data: JSON.stringify(model), type: 'POST', dataType: 'json', processData: false, success: function (data) { var question1 = data[0]; $(".list").append('<div>' + question1.Question1 + '</div>'); } });
about 4 years ago · Santiago Trujillo Denunciar

0

Creo que no devuelve {ID: "1087", Question1: "Расскажите о себе", Question2: "Tell about you",…} . ¿Estás seguro que? los items serán una matriz (ToList()).

 [{ID: "1087", Question1: "Расскажите о себе", Question2: "Tell about you",…}]

Así que ponte primero:

 var question1 = data[0] $(".list").append('<div>' + question1.Question1 + '</div>');
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda