Estoy mostrando 3 o más versiones de un formulario. Una versión es un formulario de edición para editar todos los campos. Una segunda versión será una versión de solo lectura del mismo formulario que se usará para mostrar todos los mismos campos pero con todos los campos con readonly = "true" en el lado del cliente para que el usuario no pueda ingresar datos. Los campos de solo lectura necesitan usar un estilo CSS diferente. Esto es para mostrar datos archivados. Ya estoy ocultando el botón de enviar para que no puedan enviarse, pero quiero que el formulario se vea como si fuera de solo lectura. Una tercera versión tendrá algunos campos de solo lectura y otros editables para una clase particular de usuarios que tenga privilegios de edición limitados.Hacer que todos los campos de formulario sean de solo lectura en MVC
Estoy usando ASP.NET MVC 1.0. ¿Cómo modifico todo (o un subconjunto) de los campos mostrados para que sean de solo lectura? Me gustaría iterar a través de la colección de campos en el controlador y configurarlos todos para solo leer y establecer la clase css correcta. No quiero tener que poner una declaración if en cada campo en el archivo .aspx (hay 40-50 campos) y preferiría no tener esto en el lado del cliente así puedo evitar que los usuarios modifiquen javascript/html para editar cosas que no deberían.
TIA,
Steve Shier
Sólo una nota: "por lo que puede evitar que los usuarios modifiquen JavaScript/HTML para editar cosas que no se supone que deben". No suponga que solo porque lo bloquea en el html que un usuario no puede enviar datos de POST. Es muy fácil falsificar un POST. – jeef3
Gracias por las respuestas. Utilizo una vista parcial para los contenidos del formulario. Me gustaría tratar el formulario como una colección de campos y elegir los campos de solo lectura basados en parámetros externos (derechos del usuario). Quiero volver a utilizar la misma colección y establecer las propiedades de visualización basadas en los parámetros externos. Tendré lógica en el lado del servidor para asegurarme de que el usuario tenga los derechos correctos para una edición. Me gustaría hacer todo esto del lado del servidor y no usar jquery. Si utilizo parciales múltiples, tengo que copiar y pegar el código y tengo un problema de mantenimiento con una violación DRY. Gracias, Steve –