2012-01-24 41 views
5

¿Hay alguna manera de actualizar una parte de la página (por ejemplo, div/span) en la selección de la opción de lista desplegable ...? Tenga en cuenta que estoy usando sintaxis de afeitar.usando ajax con la lista desplegable mvc3

En caso afirmativo, proporcione un código de muestra.

Respuesta

5

Sí, puede suscribirse al evento onchange.

@Html.DropDownListFor(m => m.ItemId, Model.ItemList, "Select an item...", new { onchange = "somefunction();" }) 

Tal como esto (ejemplo real):

@using (Ajax.BeginForm("Action", new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "divtoupdate", InsertionMode = InsertionMode.Replace })) 
    { 
     @Html.DropDownListFor(m => m.ItemId, Model.ItemList, "Select an item...", new { onchange = "doSubmit($(this).parents('form'));" }) 
    } 

Y luego tener esta función javascript (o similar)

<script> 
function doSubmit(form){ 
    // event.preventDefault(); doesn't work in IE8 so do the following instead 
    (event.preventDefault) ? event.preventDefault() : event.returnValue = false; 
    form.submit(); 
} 
</script> 

EDIT: En este ejemplo se supone que está utilizando discreta validación (y, por lo tanto, jQuery) y desea enviar un formulario, pero obviamente puede llamar a cualquier función de JavaScript para el evento onchange y hacer lo que desee. ..

1

simplemente agregue algunos javascript/jquery a su código. algo así como esto.

$("#button").click(function(){ 

$("#div").load("www.wateveryourdatapageis.com"); 

}); 
Cuestiones relacionadas