[英]Failing JavaScript onMouseOver event
我想在PHP文件中显示onmouseover
警报,但它失败了。 请帮我。
<?php
$a = '<a href=# onMouseover=alert(';
$a .= 'Für die Mitnahme von Sportgepäck (Scuba/Diving/Golf Equipment) bis'.
' 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In '.
'Schalter die normalen Übergewichtsraten pro KG berechnet werden ('.
'unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks '.
'beinhaltet nicht das Sportgepäck)';
$a .= ')>LINK DESCRIPTION</a>';
echo $a;
?>
<?php
$a = '<a href=# onmouseover=alert("';
$a .= 'Für die Mitnahme von Sportgepäck (Scuba/Diving/Golf Equipment) bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden (unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck)';
$a .= '")>LINK DESCRIPTION</a>';
echo $a;
?>
这里不需要PHP。 只写HTML:
<a href="#" onmouseover="alert('looong string...')">LINK DESCRIPTION</a>
它更容易阅读和调试。
但解释为什么你的代码不起作用:你搞乱报价。
这是您真正想要的HTML:
<a href="#" onmouseover="alert('my text');">LINK DESCRIPTION</a>
请注意每个属性值周围的引号和警报文本周围的单引号。 要在PHP中获得此功能,您可以通过转义引号来实现:
$a='<a href="#" onmouseover="alert(\'';
$a.='Für die [...] Sportgepäck)';
$a.= '\')">LINK DESCRIPTION</a>';
在alert
转义字符串,如下所示:
<?php
$a = '<a href=# onMouseover=alert(';
$a .= '\'Für die Mitnahme von Sportgepäck (Scuba/Diving/Golf Equipment) bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden (unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck)\'';
$a .= ')>LINK DESCRIPTION</a>';
echo $a;
?>
<?php $a='Für die Mitnahme von Sportgepäck (Scuba/Diving/Golf Equipment) bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden (unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck)';
echo '<a href=\"#\" onmouseover=\"alert(\"'.$a.'\")\">LINK DESCRIPTION</a>';
就这么简单......
不是在PHP中打印HTML代码,而是转义PHP块:
<?php
// some PHP code and exit PHP block
?>
<a href="#" onmouseover="alert('Für die Mitnahme.....')">LINK DESCRIPTION</a>
<?php
// enter PHP block again
?>
然而问题是在alert
功能中缺少撇号。
是:
alert(some text)
应该:
alert('some text')
如果您错过撇号,JavaScript会将您的文本视为变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.