Pregunta

Tengo un problema con el FreeTextBox Rich Text Editor en mi sitio ASP.NET. El problema ocurre cuando accedo al sitio con Firefox y tengo una instancia de freetextbox en un div oculto. El div oculto también podría ser un Panel de pestañas AJAX. El problema real es que cuando se carga la página, se lanza una excepción no detectada (firebug muestra la función StoreHtml ()) y detiene la devolución de datos.

¿Está el problema y es una solución para él?

Gracias

¿Fue útil?

Solución

Hace poco me encontré con un problema similar con las pestañas de la interfaz de usuario de jQuery. Lo que debes hacer es cambiar el CSS de las pestañas ocultas a algo como:

.hiddentab
{
     position: absolute;
     left: -99999999999999;
}

Esto coloca las pestañas ocultas muy a la izquierda, y en el modo de posición absoluta no hace que aparezcan barras de desplazamiento horizontal. Cuando se muestra la pestaña, simplemente elimine la clase hiddentab del elemento de pestaña.

Esto funcionará si el problema está relacionado con el comportamiento extraño de Firefox con la pantalla: ninguna.

Otros consejos

He encontrado otra solución al problema en caso de que alguien lo esté buscando. Lo que hice fue usar javascript para anular la función OnSubmit del formulario, detectando así la excepción que causó el problema y continuando con el resto del código.

Sin embargo, la solución es una especie de " hack " ya que no cubre todas las situaciones. Encontré la solución en el foro FreeTextBox y lo probé y funciona. La única diferencia en mi código es que devuelvo verdadero al final de la función de anulación:

function OvrdSubmit()
{
    var ftbSubmit=document.forms[0].onsubmit;
    if (typeof(ftbSubmit) == 'function')
    {
        document.forms[0].onsubmit = function()
        {
            try{ftbSubmit();}
            catch(ex){}
        }
    }

    // We are ok
    return true;
}

Como mi sitio es un sitio ASP.NET, también tuve que agregar esta línea en la carga de página ():

ClientScript.RegisterOnSubmitStatement(this.GetType(), String.Concat(this.ClientID, "_OnSubmit"), "javascript: return OvrdSubmit();");

Espero que ayude a alguien con el mismo problema.

Firefox tiene un problema con estar dentro de cualquier cosa con un estilo de pantalla: ninguno. Lo que hice fue usar un div con un índice z que escondía el div hasta que lo necesitaba. Yo empezaría allí.

Gracias por su respuesta, sin embargo, mi problema actualmente es que el FreeTextBox está dentro de un Panel de pestañas AJAX, por lo tanto, tendría que reconstruir toda la funcionalidad de las pestañas para hacerlo, ¡y no tengo el tiempo adecuado!

Para lo que vale, estoy cerca de una solución (creo) estableciendo el atributo .ReadOnly de FTB en verdadero y luego configurándolo de nuevo en falso en el controlo .PreRender. Funciona por primera vez cuando se carga la página, por lo que ahora tengo que averiguar cómo implementar esto correctamente para cada devolución de datos.

¡Publicaré la solución si la encuentro!

Gracias de todos modos!

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