Foros del Web » Programación para mayores de 30 ;) » Programación General »

Problema con XSL y JavaScript

Estas en el tema de Problema con XSL y JavaScript en el foro de Programación General en Foros del Web. Hola Junto con saludarlos, quisiera ver si me pueden ayudar con un problema que tengo, lo que pasa es que estoy trabajando con XSL, JAVASCRIPT, ...
  #1 (permalink)  
Antiguo 22/09/2008, 17:39
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 16 años, 3 meses
Puntos: 2
Exclamación Problema con XSL y JavaScript

Hola

Junto con saludarlos, quisiera ver si me pueden ayudar con un problema que tengo, lo que pasa es que estoy trabajando con XSL, JAVASCRIPT, en XSL llamo a una funcion en JavaScript y el problema se produce cuando paso mas de 1 argumento XSL en la funcion.

Aqui pongo el codigo

<td>

<xsl:element name="a">

<xsl:attribute name = "href">#</xsl:attribute>

<xsl:attribute name = "onclick">

editId(<xsl:value-of select="product_id" />,<xsl:value-of select="name"/>,true)

</xsl:attribute>

Editar

</xsl:element>
En la linea marcada en rojo esta el error, mas especificamente pasando el segundo argumento, ya que si no lo paso de la forma descrita y coloco por ejemplo un valor cualquiera funciona bien por lo que me parece que la forma en que estoy pasadon el argumento xsl a la funcion no esta bien.

Saludos

Fenris

Última edición por Fenris; 03/10/2008 a las 16:51 Razón: Otro Error
  #2 (permalink)  
Antiguo 23/09/2008, 10:14
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 9 meses
Puntos: 90
Respuesta: Problema con XSL y JavaScript

No será un problema de concatenación ? talvés tenga que ser

editId(<xsl:value-of select="product_id" />,'<xsl:value-of select="name"/>',true)

No olvides que en JS los textos deben ir entre comillas...

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 03/10/2008, 16:51
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Problema con XSL y JavaScript

Cita:
Iniciado por monoswim Ver Mensaje
No será un problema de concatenación ? talvés tenga que ser

editId(<xsl:value-of select="product_id" />,'<xsl:value-of select="name"/>',true)

No olvides que en JS los textos deben ir entre comillas...

Saludos
Esta es la funcion JAVASCRIPT a la cual se llama en xsl, en esta funcion al parecer tambien tengo un error porque cuando presiono el enlace eliminar no aparece nada y deberia mostrarme una ventana de copnfirmacion CONFIRM en JS con el nombre del producto que deseo eliminar y que paso como argumento en el XSL por favor si alguien sabe cual es el ERROR que deje un mensaje indicandome como se puede resolver y que hice mal.

function editId(id, objName, editMode)

{

// obtiene el elemento <tr> de la tabla que contiene la tabla



var productRow = document.getElementById(id).cells;

// ¿estamos habilitando modo edición?

if(editMode)

{

// sólo podemos tener una fila en modo edición a la vez

if(editableId) editId(editableId, editableName, false);

// almacena los datos actuales, en caso que el usuario decida cancelar los cambios

save(id);

// crea cajas de texto editables

productRow[1].innerHTML =

'<input class="editName" type="text" name="name" ' +

'value="' + productRow[1].innerHTML + '">';

productRow[2].innerHTML =

'<input class="editPrice" type="text" name="price" ' +

'value="' + productRow[2].innerHTML + '">';

productRow[3].getElementsByTagName("input")[0].disabled = false;

productRow[4].innerHTML = '<a href="javascript:void(0)" onclick="updateRow(document.forms.grid_form_id,' + id +

')">Actualizar</a><br/><a href="javascript:void(0)" onclick="if (confirmaDelete(' + String(objName) + ') == true) { deleteRowBD(' + id + '); } else { return false; }">Eliminar</a><br/><a href="javascript:void(0)" onclick="editId('+ id + ',' + objName + ',false)">Cancelar</a>';

// salva la id del producto que esta siendo editado

editableId = id;

editableName = objName;

}

// si se deshabilita el modo edición...

else

{

productRow[1].innerHTML = document.forms.grid_form_id.name.value;

productRow[2].innerHTML = document.forms.grid_form_id.price.value;

productRow[3].getElementsByTagName("input")[0].disabled = true;

productRow[4].innerHTML = '<a href="javascript:void(0)" onclick="editId(' + id + ',' + objName + ',true)">Editar</a>';

// no hay productos que estén siendo editados

editableId = null;

editableName = null;

}

}
Espero sus comentarios
  #4 (permalink)  
Antiguo 04/10/2008, 11:13
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 9 meses
Puntos: 90
Respuesta: Problema con XSL y JavaScript

Justamente, en una función javascript los parámetros de texto deben ir entre comillas...

editId(1,esteban,true);

daría error...en cambio

editId(1,'esteban',true);

Estaría bien...a eso me refería...también checkea de colocar un ; al final de las líneas, es buena costumbre...

Saludos
__________________
Esteban Quintana
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:34.