Creo que su problema es que las etiquetas (representadas como etiquetas span
) son de solo lectura en el mundo asp.net. No están destinados a ser utilizados como controles de "entrada", y como tales, los cambios a su HTML en el lado del cliente se ignoran en el lado del servidor, donde los valores se establecen en función de ViewState.
Para hacer lo que está pidiendo, también debe notificar al servidor sobre el cambio, como al usar AJAX. El único problema aquí es que los métodos web ajax en el código subyacente son estáticos y, debido a esto, no pueden acceder al conjunto de controles de la página para cambiar el valor .Text.
Al final, la opción más fácil es hacer uso de los campos ocultos como dijo Nick. Estos son controles técnicamente 'de entrada' y sus valores cambiados en el lado del cliente se envían al servidor como lo desee. Tendría que mantener la etiqueta/span y el campo/entrada ocultos sincronizados en el cliente.
Espero que esto ayude.
¿Podríamos ver el html? – mcgrailm