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

230
Vistas
Ajax Post en Asp.net Core en .Net 6 no funciona en el método de acción

Estoy haciendo una llamada ajax en cshtml como a continuación:

 $(document).ready(function(){ $('.dl-dir-list').click(function(e){ console.log($(e.target).data('path')); console.log(JSON.stringify({path: $(e.target).data('path')})); $.ajax({ type: "POST", url: '@Url.Action("GetFiles")', data: JSON.stringify({path: $(e.target).data('path')}), dataType: "json", contentType: "application/json; charset=utf-8", success: function (response) { console.log(response); }, error: function () { alert("Error while getting files"); } }); }); });

Método de acción:

 [HttpPost] public JsonResult GetFiles([FromBody]string path) { return Json(_fileService.GetFilesFromDirectory(path)); }

El problema siempre es que el parámetro de ruta es nulo. ¿Cual podría ser el problema? Esto está en Asp.Net COre, versión .Net 6

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

1.Asegúrese de que $(e.target).data('path') contenga valor.

2. Cambia tu código a:

 data: JSON.stringify($(e.target).data('path')),

Toda la demostración de trabajo:

Vista:

 //be sure add this `data-path` attribute <input type="button" value="Create" class="dl-dir-list" data-path="aaa"/> @section Scripts { <script> $(document).ready(function(){ $('.dl-dir-list').click(function(e){ console.log($(e.target).data('path')) //result: "aaa" $.ajax({ type: "POST", url: '@Url.Action("GetFiles")', data: JSON.stringify($(e.target).data('path')), //change here.... dataType: "json", contentType: "application/json; charset=utf-8", success: function (response) { console.log(response); }, error: function () { alert("Error while getting files"); } }); }); }); </script> }

Controlador:

 [HttpPost] public JsonResult GetFiles([FromBody]string path) { return Json(_fileService.GetFilesFromDirectory(path)); }
over 4 years ago · Santiago Trujillo Denunciar

0

Pruébelo como a continuación,

 data: JSON.stringify({"path": $(e.target).data('path')}),
over 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