Un lien HREF incendies mon Javascript avant de cliquer sur

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Juillet 31st, 2010, 8:38 pm

Im jouer avec un peu de code javascript qui crée un popup qui prend le code HTML en tant que paramètre et affiche en utilisant innerHTML. Il désactive et couvre l'arrière-plan. Avant de tenter d'expliquer tout mon code. Mon problème est simple, j'ai un script PHP qui affiche une cellule de tableau avec un lien pour ouvrir le menu contextuel.
PHP Code: [ 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.  



Il semble que lorsque la cellule du tableau est affiché, affiche le contenu $ html automatiquement à l'intérieur de la cellule au lieu de seulement le bouton Link, qui lorsqu'on clique dessus devrait ouvrir une popup (qui a vraiment crée juste un div id et affiche innerHTML pour elle). En fait, le bouton Link ne fonctionne même pas. Sur l'affichage de l'impression Close2Submit "," OK ", null," Annuler ", null);> Link et si je planer sur le bouton Submit est dit" javascript & #058; Popup ("(sans guillemets). html $ est ce que les essais avec une Im ne sera pas le réel de la table que je veux afficher sur le popup, mais j'ai pensé que si $ html contenu travaillé alors tout devrait.

Ive essayé d'utiliser onclick de l'élément A avec #etc nulle et pourquoi le feu javascript sans clic de l'utilisateur? Ou il peut ne pas être de tir juste l'affichage, mais Ive a regardé à travers toutes les citations et les apostrophes mon mais je ne peux pas régler le problème.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Juillet 31st, 2010, 8:38 pm

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Juillet 31st, 2010, 9:07 pm

Lentement, il a travaillé à obtenir.

Le problème est mauvais code pas que ce n'est pas de tir. La variable $ html a des problèmes. Je suis fondamentalement les choses vont en s'échappant le code HTML:
Code: [ 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>";



theres Peut-être un moyen plus propre.
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 18th, 2010, 11:55 am

Je suis de retour à revoir cette cause, j'ai remarqué que je ne peut pas afficher des phrases dans la variable $ html qui contiennent des guillemets simples (apostrophes). Comment sont des éléments HTML (div, table, tr, td, entrée) suppose de regarder dans le Javascript?
Code: [ 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>';


C'est ce que Im jouer avec. Je n'arrive pas à obtenir le devis de travail à droite.
  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de l’utilisateur
  • Inscription: Mar 12, 2007
  • Messages: 6228
  • Loc: South-Africa
  • Status: Offline

Message Août 25th, 2010, 3:26 am

de montrer une seule offre dans une chaîne qui est délimitée par des guillemets simples, vous pouvez y échapper avec le slash "\"...Quelque chose comme ceci:

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


Quel sera l'écho: Bonjour, mon nom est "R_T".
Let's leave all our *plum* where it is and go live in the jungle ...
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Août 31st, 2010, 5:54 am

En fait ce que je fais est de mettre $ test dans une fonction javascript qui popups un transfert modal du contenu de test $, ce qui dans mon cas est HTML. Le javascript & #058; Popup () crée un transfert modal et si j'utilise Bonjour mon nom est "R_T". Les pauses fonction parce que je puis avoir

Code: [ 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);


Est-il possible de passer des guillemets simples à une fonction javascript?
  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de l’utilisateur
  • Inscription: Mar 12, 2007
  • Messages: 6228
  • Loc: South-Africa
  • Status: Offline

Message Août 31st, 2010, 6:00 am

Bon à propos de cette façon:

JAVASCRIPT Code: [ 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 ...

Afficher de l'information

  • Total des messages de ce sujet: 6 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 135 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC