Pregunta

Estoy usando MOSS 2007 para NewForm.aspx que necesita implementar la lógica de campo, es decir, si se deben mostrar ciertos campos en función de los valores de los campos anteriores.

Implementé una solución similar al incorporar un elemento web del editor de contenido dentro de NewForm.aspx y usar JQuery para manipular los elementos del formulario.

Sin embargo, esta solución no se adapta a mi escenario actual debido a la cantidad de campos a los que es necesario hacer referencia.Tendría mucho más sentido envolver de alguna manera etiquetas div alrededor de las secciones del formulario que quiero mostrar dinámicamente en lugar de hacer referencia a cada campo dentro de esa sección individualmente.¿Alguien tiene alguna sugerencia?

Muchas gracias

¿Fue útil?

Solución

Acabo de terminar de hacer algo similar. Tenemos una lista grande que queríamos organizar en secciones. Como parece que tienes un mango del JavaScript, te daré el pseudocódigo:

create config JSON object defining sections and fields in each section
for each section
    create new TBODY tag in table.ms-formtable
    attach event handler to allow user to switch between sections
    for each field in section
        insert field into TBODY

Desafortunadamente, lo que descubrí es que IE 7 tiene dificultades para hacer toda la manipulación DOM (mover las filas de campo a diferentes etiquetas de Tbody). La lista tiene más de 100 campos, por lo que esto agrega 2-3 segundos de sobrecarga a la página. Funciona rápidamente en Firefox o IE 8 ... pero supongo que también podría ser mi código.

Otros consejos

Incluso si utilizara el envoltorio, deberá decir para cada campo a qué sección pertenece.

Parece que hay un par de soluciones (no las he usado yo mismo). Ver, por ejemplo, este reciente:

https://www.nothingbutsharepoint.com/sites/eusp/pages/tabs-for-s-sharepoint-forms.aspx

Licenciado bajo: CC-BY-SA con atribución
scroll top