Un enlace HREF Incendios mi Javascript antes de hacer clic

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Julio 31st, 2010, 8:38 pm

Im jugar con algo de código javascript que crea una ventana emergente que tiene el código HTML como un parámetro y se muestra con innerHTML. Se deshabilita y cubre el fondo. Antes de tratar de explicar todo mi código. Mi problema es simplemente que tengo un script php que muestra una celda de la tabla con un vínculo para abrir la ventana emergente.
PHP Código: [ Select ]
 
$html = "<form name='form1' method='post' action='proc.php'><table><tr><td>Email:</td><td><input name='email' type='text' id='email' value=''></td></tr><tr><td>Password:</td><td><input name='mypassword' type='password' id='mypassword' value=''></td></tr><tr><td></td><td><input name='pkey' type='hidden' id='id' value=''><input type='submit' name='Submit' value='Submit'></td></tr></table></form><br><a href='javascript&#058;afilter(7,31,2010)' onMouseOver=' return changeImage(4)' onMouseOut= 'changeImageBack(4)'>Close2Submit</a>";
 
 
$timelist .= "<td width='$w' height='50px' valign='top' onMouseOver=\"this.className='mouseover'\" onMouseOut=\"this.className='mouseout'\"><a href='javascript&#058;Popup($html,'OK',null,'Cancel',null);'>Link</a></td>";
 
  1.  
  2. $html = "<form name='form1' method='post' action='proc.php'><table><tr><td>Email:</td><td><input name='email' type='text' id='email' value=''></td></tr><tr><td>Password:</td><td><input name='mypassword' type='password' id='mypassword' value=''></td></tr><tr><td></td><td><input name='pkey' type='hidden' id='id' value=''><input type='submit' name='Submit' value='Submit'></td></tr></table></form><br><a href='javascript&#058;afilter(7,31,2010)' onMouseOver=' return changeImage(4)' onMouseOut= 'changeImageBack(4)'>Close2Submit</a>";
  3.  
  4.  
  5. $timelist .= "<td width='$w' height='50px' valign='top' onMouseOver=\"this.className='mouseover'\" onMouseOut=\"this.className='mouseout'\"><a href='javascript&#058;Popup($html,'OK',null,'Cancel',null);'>Link</a></td>";
  6.  



Parece que cuando la celda de tabla se muestra que muestra el contenido de $ html de forma automática dentro de la celda en lugar de sólo el botón cuando se hace clic Link que debe abrir una ventana emergente (que en realidad sólo crea un div id y muestra innerHTML a él). De hecho, el botón de enlace ni siquiera funciona. En la exhibición se imprime Close2Submit "," OK ", null," Cancelar ", null);> Enlace y si se ciernen sobre el botón Enviar se dice" javascript & #058; Popup ("(sin comillas). html $ se lo prueba Im con una no será la tabla real que desea mostrar en la ventana emergente pero pensé que si ese contenido de $ html trabajó entonces cualquier deberían.

Ive intentado usar onclick del elemento A con #y etc vacío ¿Por qué es el despido sin Javascript haga clic en un usuario? O puede que no sea simplemente mostrar disparar, pero Ive miró a través de todas mis citas y apóstrofes, pero no puedo arreglarlo.
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Julio 31st, 2010, 8:38 pm

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Julio 31st, 2010, 9:07 pm

Poco a poco consiguiendo lo resolví.

El problema es el código no es malo que su despido no. La variable $ html tiene problemas. Yo, básicamente, tiene cosas van escapando de la html:
Código: [ Select ]

$html = "<form><table> etc etc </table></form>";

$html = mysql_real_escape_string($html);

$timelist = ".....<a href='javascript:Popup(\"$html\",\"OK\",null,\"CANCEL\",null);'>Link</a>";
  1. $html = "<form><table> etc etc </table></form>";
  2. $html = mysql_real_escape_string($html);
  3. $timelist = ".....<a href='javascript:Popup(\"$html\",\"OK\",null,\"CANCEL\",null);'>Link</a>";



Tal vez hay un camino más limpio.
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Agosto 18th, 2010, 11:55 am

Im de nuevo a volver a visitar esta causa me di cuenta que no puede mostrar frases en la variable $ html que contienen comillas simples (apóstrofes). ¿Cómo son elementos html (div, tabla, tr, td, de entrada) supone que debe mirar en el javascript?
Código: [ Select ]
$rs = 10;
$custname = "Donnie Kobold";

$html = '<div id="eventztable"><div id="closeevent"><a href="javascript:this.hide()" /><img src="img/closeButton_normal.png"></a></div><form name="addevent2"><table width="750" border="0" align="center"><tr><td>Name </td><td align="left"><input name="custname" type="text" id="custname" size="30" value="'.$custname.'" /></td></tr><tr><td valign="top">Comments</td><td valign="top"><p><textarea name="comments" cols="50" rows="8" id="comments">'.$commentz.'</textarea></p></td></tr></table></form><div id="addresponse"></div></div>';

$ecell.= '<td rowspan = "'.$rs.'" style="cursor:pointer;" valign="top" onMouseOver=this.className='.$dayover.'" onMouseOut="this.className='.$dayout.'" onClick="javascript:Popup(\"'.$html.'\","null","null","null","null");">'.$eventinfo.'</td>';
  1. $rs = 10;
  2. $custname = "Donnie Kobold";
  3. $html = '<div id="eventztable"><div id="closeevent"><a href="javascript:this.hide()" /><img src="img/closeButton_normal.png"></a></div><form name="addevent2"><table width="750" border="0" align="center"><tr><td>Name </td><td align="left"><input name="custname" type="text" id="custname" size="30" value="'.$custname.'" /></td></tr><tr><td valign="top">Comments</td><td valign="top"><p><textarea name="comments" cols="50" rows="8" id="comments">'.$commentz.'</textarea></p></td></tr></table></form><div id="addresponse"></div></div>';
  4. $ecell.= '<td rowspan = "'.$rs.'" style="cursor:pointer;" valign="top" onMouseOver=this.className='.$dayover.'" onMouseOut="this.className='.$dayout.'" onClick="javascript:Popup(\"'.$html.'\","null","null","null","null");">'.$eventinfo.'</td>';


Esto es lo que estoy metiendo. Parece que no puedo conseguir las citas de trabajo derecha.
  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de Usuario
  • Registrado: Mar 12, 2007
  • Mensajes: 6228
  • Loc: South-Africa
  • Status: Offline

Nota Agosto 25th, 2010, 3:26 am

para mostrar una comilla simple en una cadena que está delimitada por comillas simples se puede escapar de ella con la barra "\"...Algo como esto:

PHP Código: [ Select ]
$test = 'Hello my my name is \'R_T\'.';


¿Qué hará eco: Hola mi nombre es "R_T".
Let's leave all our *plum* where it is and go live in the jungle ...
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Agosto 31st, 2010, 5:54 am

En realidad lo que estoy haciendo es poner $ test en una función javascript que popups un referente del contenido de la prueba $ que en mi caso es HTML. El Javascript y #058; Popup () crea un modal y si uso Hola mi nombre es "R_T". Se rompe la función de la causa I a continuación, han

Código: [ Select ]

javascript: Popuup('Hello my name is \'R_T\'', null, null, null, null);
  1. javascript: Popuup('Hello my name is \'R_T\'', null, null, null, null);


¿Es posible pasar comillas simples para una función javascript?
  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de Usuario
  • Registrado: Mar 12, 2007
  • Mensajes: 6228
  • Loc: South-Africa
  • Status: Offline

Nota Agosto 31st, 2010, 6:00 am

Bueno ¿qué tal esto:

JAVASCRIPT Código: [ Select ]
javascript&#058; Popuup("Hello my name is 'R_T'", null, null, null, null);
Let's leave all our *plum* where it is and go live in the jungle ...

Publicar Información

  • Total de mensajes en este tema: 6 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 154 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC