• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

160
Vistas
Incrustación de valores de formulario en una URL JavaScript de ASP.Net MVC.Llamada a la acción

Estoy tratando de pasar parámetros a un controlador ASP.Net MVC desde una llamada URL.Action en JavaScript. He visto a otros publicar cosas similares a esta, pero no la circunstancia exacta que tengo, aunque he intentado implementar cuáles eran esas soluciones, no se tradujeron.

Tengo un botón en un formulario modal que quiero llamar un método en el controlador cuando se hace clic en él y se cierra el formulario modal.

Aquí está el HTML para el botón:

 <div class="modal-footer"> <button type="button" class="btn btn-default closing-modal" data-dismiss="modal">Done</button> </div>

aquí está el JavaScript

 $(document).on('click', '.closing-modal', function () { var datePickers = document.getElementsByClassName("datepicker"); var times = document.getElementsByClassName("timeField"); var myStartDate = datePickers[0].value; var myEndDate = datePickers[1].value; var myStartTime = times[0].value; var myEndTime = times[1].value; window.location.href = '@Url.Action("ContractSelectedIndex", "ReviewTicket")'; });

y aquí está el método de recepción en el controlador:

 public ActionResult ContractSelectedIndex(string startDate, string startTime, string endDate, string endTime)

He intentado varias formas de agregar un nuevo {}, pero debido a la @ no puedo encontrar la sintaxis correcta. Esto es lo que he probado que tiene más sentido para mí (solo el primer parámetro por el bien del ejemplo), pero no me gusta.

 window.location.href = '@Url.Action("ContractSelectedIndex", "ReviewTicket", new { startDate: ' + myStartDate + ')' ;
about 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

puedes usar esto si prefieres el estilo clásico de mvc

 var url='@Url.Action("ContractSelectedIndex", "ReviewTicket")' + '/' + startDate + '/' + startTime + '/' + endDate + '/' +endTime; window.location.href = url;

en este caso su acción debe ser

 [Route("~/ReviewTicket/ContractSelectedIndex/{startDate}/{startTime}/{endDate}/{endTime}")] public ActionResult ContractSelectedIndex(string startDate, string startTime, string endDate, string endTime)

o esto

 var url='@Url.Action("ContractSelectedIndex", "ReviewTicket")' + '?startDate=' + startDate + '&startTime=' + startTime + '&endDate=' + endDate + '&endTime=' + endTime; window.location.href = url;

en este caso puedes usar la acción que tienes ahora

about 3 years ago · Juan Pablo Isaza 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda