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

151
Vistas
Cómo usar Action Link en la etiqueta de opción para enviar parámetros al controlador

Estoy usando una etiqueta Select y tengo foreach que agrega los valores a la lista, pero tengo que llamar a un controlador de actualización y pasarle 2 parámetros usando ActionLink . Intenté hacerlo de esta manera pero no funciona. queria saber que estoy haciendo mal?

 <form action="Update " method="get" class="select-menu"> <select id="sectionId" name="sectionId" class="selectpicker" title="Section" data-width="100%" data-live-search="true" onchange="this.form.submit()"> @foreach (var item in Model) { <option value="@item.Text" data-url="@Html.ActionLink(item.Text, "UpdateBoard", new { subSectionID = item.Value, subsectionName = item.Text })"></option> } </select> </form>

La consulta debería ser algo como esto http://localhost:60082/Update?subSectionID=27&subsectionName=Something

¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El uso de la etiqueta de select dentro del form de la manera descrita anteriormente no funcionará correctamente porque el form no tiene parámetros adicionales para la ruta ( subSectionID y subsectionName ). Como resultado, el método de acción Update recibirá los parámetros subSectionID y subsectionName como null .

Por lo tanto, para que estos parámetros se establezcan dinámicamente en función de una selección, intente lo siguiente:

 <script type="text/javascript"> $('#sectionId').change(function () { var url = $(this).val(); if (url != null && url != '') { window.location.href = url; } }) </script> <select id="sectionId" name="sectionId" class="selectpicker" title="Section" data-width="100%" data-live-search="true"> @foreach (var item in Model) { <option value="@Url.Action("SetLanguage", new { subSectionID = item.Value, subsectionName = item.Text })">@item.Text</option> } </select>

Dentro de foreach use Url.Action helper en lugar de Html.ActionLink . El ayudante Url.Action genera una URL completa para un método de acción mediante el nombre de acción y los valores de ruta especificados.

Pero Html.ActionLink devuelve un elemento de anclaje para el texto del enlace especificado, la acción y esto puede causar problemas adicionales cuando se pasa al lado del servidor.

about 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda