Hola, explico mi problema:
tengo una jsp llamada por ejemplo a.jsp,
a.jsp
-----
en ella incluyo un iframe en el que llamo a otra jsp llamada por ejemplo cal.jsp
a.jsp
-------
-
-
-
----->iframe
------
-
-
-
------> cal.jsp
entonces, en esta cal.jsp, he incluido una llamada a la función Calendar.setup, relativa a la configuración del DHTML Calendar cuyo código baje de la página: http://dynarch.com/mishoo
a esta función Calendar.setup la llamo de la siguiente manera:
Calendar.setup({
inputField : "c<xsl:value-of select="id"/>", // id of the input field
ifFormat : "%d/%m/%Y", // format of the input field
button : "calendarioc<xsl:value-of select="id"/>", // trigger for the calendar (button ID)
align : "Br", // alignment (defaults to "Bl")
singleClick : true
});
En ella, button indica que elemento activa el evento que crea el calendario y lo muestra...
mi pregunta es:
¿CÓMO PUEDO HACER QUE EL CALENDARIO SE MUESTRE (lo que equivale a: EL ELEMENTO PADRE DEL CALENDARIO SEA...) EN ALGÚN ELEMENTO(por ejemplo body, o cualquier otro div), DE
LA JSP a.jsp, POR SUPUESTO, TENIENDO EN CUENTA QUE LOS EVENTOS DEL CALENDARIO DEBE SEGUIR FUNCIONANDO?
Lo he intentado utilizando la función
Calendar.prototype.reparent = function (new_parent) {
var el = this.element;
el.parentNode.removeChild(el);
new_parent.appendChild(el);
};
pero no funciona,
también he intentado modificando la función
Calendar.prototype.create = function (_par) {
var parent = null;
if (! _par) {
// default parent is the document body, in which case we create
// a popup calendar.
//parent = document.getElementsByTagName("body")[0];
parent = window.parent.document.getElementsByTagName("body" )[0];
this.isPopup = true;
} else {
parent = _par;
this.isPopup = false;
...
pero tampoco obtengo los resultados esperados.
Bueno, sólo necesito que funcione en IExplorer...