¿Cuál es la manera más fácil (correcto) en ASP.NET MVC 2 para hacer un texto de visualización del botón del ratón?

StackOverflow https://stackoverflow.com/questions/3458170

Pregunta

Necesito hacer una demostración rápida mostrando cómo hacer interactividad en una página ASP.NET MVC .

Me abrió un proyecto ASP.NET MVC en Visual Studio 2010, puso la vista en modo de diseño, arrastrado en un botón, hacer doble clic en él y mirado a la vista de nuevo. Yo estaba esperando a ver algo de código jQuery ingeniosa generado sino un <asp:Button> y un bloque <script runat="server"> fue creado, lo que parece ser un mezcla de metáforas clásicas ASP.NET y ASP.NET MVC . No creo que esa es la forma recomendada para construir la interactividad en MVC, ¿verdad?

¿Cuál es el enfoque MVC estándar más fácil más que yo (1) crear un botón, (2) cuando se hace clic en el botón, cambiar un poco de texto en mi opinión?

  • ¿es realmente la mejor práctica en MVC utilizar el bloque runat-servidor?
  • ¿hay algunos asistentes fáciles que generan jQuery interactividad para que pueda hacer esto de una manera mejor práctica MVC?
  • o necesito para implementar el JQuery mí mismo como lo haría en una página HTML plano y sin ASP.NET MVC?

Ver:

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<script runat="server">

    protected void Button1_Click(object sender, EventArgs e)
    {

    }
</script>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Home Page
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <form id="form1" runat="server">
    <h2><%: ViewData["Message"] %></h2>
    <p>

        <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />

    </p>
    </form>
</asp:Content>
¿Fue útil?

Solución

No se debe utilizar asp.net ajax controles en asp.net MVC. Si desea crear un botón acaba de escribir alguna pasada de moda como html:

<input type="button">Button</input>

A continuación, si necesita este botón para realizar alguna acción, acaba de escribir nueva acción en lugar de código detrás método similar y llamar así:

<input type="button" onclick="javascript:window.location = 'http://mypage.com/mycontroller/buttonaction' />

o incluso crear un vínculo mejor lugar del botón utilizando MVC-edificado en html ayudantes:

<%= Html.ActionLink("Do something" ,"ButtonAction") %>

Más rápido se coge mejor para usted. Es necesario renunciar a asp.net ajax hábito. No hay una devolución de datos o código atrás y se remueve con una razón. MVC es controlada por las acciones ejecutadas lo que significa que están dirigiendo la solicitud llamando enlaces especificados. Mediante el uso de HTML puro que tienes mucho más control sobre su código de salida y el flujo de acciones de la aplicación.

Recuerde que MVC no es un nuevo ASP.NET AJAX y los dos voluntad va de la mano, por lo que si este estilo de escritura que Apps no se adapte a usted, entonces no hay que usarla. Es sólo el metter de elección que la tecnología es mejor para usted y sus proyectos.

Además de aprender más sobre la visita MVC asp.net mvc página web . Yo te recomiendo especialmente para ver algunos videos como éste . Definitivamente le ayudará a entender mejor lo que MVC es y cuáles son sus ventajas y desventajas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top