Quiero deshabilitar un cuadro de texto en la vista. Así que utilizar el siguiente código:

<%= Html.TextBox("ID", Model.ID, new { readonly="true" })%>

o

<%= Html.TextBox("ID", Model.ID, new { enable="false" })%>

Tanto de ellos no funciona. ¿cuál es la solución?

InformationsquelleAutor KentZhou | 2009-07-20

6 Comentarios

  1. 52

    Intentar

    <%= Html.TextBox("ID", Model.ID, new { @readonly="readonly" })%>

    No estoy seguro de que usted tiene que utilizar la sobrecarga de 4 parámetros. Usted debe ser capaz de utilizar el uno con 3, pero es necesario anexar @ a la readonly desde readonly es una palabra clave en C#. Y la configuración de @readonly para readonly es compatible con XHTML.

  2. 7

    Intentar

    <%= Html.TextBox("ID", Model.ID, null, new { @readonly="true" })%>

    lugar de

    <%= Html.TextBox("ID", Model.ID, new { @readonly="true" })%>

    Si usted llega la documentación, se puede ver que el tercer parámetro no es htmlAttributes, como usted probablemente se esperaba.

    Que usted necesita para utilizar el la sobrecarga con cuatro parámetros.

    • Parece que esto ha cambiado y que el 3er parámetro ES htmlAttributes.
  3. 6

    De tomar ventaja de la más actualizada de la API que puede utilizar:

    Formularios Web De Motor:

    <%= Html.TextBoxFor(m => m.ID, new { @readonly = "readonly" }) %>

    De Afeitar Motor:

    @Html.TextBoxFor(m => m.ID, new { @readonly = "readonly" })

    Saludos.

    • gracias por señalar el motor del formato
  4. 5

    Si usted no está obligado a mostrar un readonly cuadro de texto en su página web, considere el uso de la @Html.DisplayFor helper: la salida será de sólo lectura (en realidad es solo un texto en un div) y será parte de la Modelo cuando el motor modelo se unen en enviar.

    • No seguro por qué, pero este, «ser parte de la Modelo cuando el motor modelo se unen en submit.» ,no funciona, para mí, en MVC 5. Para un int, por ejemplo, siempre me 0. Si yo uso este –> @Html.TextBoxFor(m => m.ID, new { @readonly = "readonly" }) que funciona como se espera. Yo no DownVote ya no puedo comprobar que yo no soy el problema aquí.

Dejar respuesta

Please enter your comment!
Please enter your name here