JavaScript onMouseOver事件失败

时间:2011-04-26 08:31:51

标签: javascript php

我想在PHP文件中显示onmouseover警报,但它失败了。请帮帮我。

<?php
    $a = '<a href=# onMouseover=alert(';
    $a .= 'Für die Mitnahme von Sportgepäck &#40;Scuba/Diving/Golf Equipment&#41; bis'.
' 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In '.
'Schalter die normalen Übergewichtsraten pro KG berechnet werden &#40;'.
'unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks '.
'beinhaltet nicht das Sportgepäck&#41';
    $a .= ')>LINK DESCRIPTION</a>';
    echo $a;
?>

6 个答案:

答案 0 :(得分:1)

<?php
    $a = '<a href=# onmouseover=alert("';
    $a .= 'Für die Mitnahme von Sportgepäck &#40;Scuba/Diving/Golf Equipment&#41; bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden &#40;unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck&#41';
    $a .= '")>LINK DESCRIPTION</a>';
    echo $a;
?>

答案 1 :(得分:1)

这里不需要PHP。只需编写HTML:

<a href="#" onmouseover="alert('looong string...')">LINK DESCRIPTION</a>

阅读和调试要容易得多。

但是解释为什么你的代码不起作用:你搞乱报价。

答案 2 :(得分:1)

这是您真正想要的HTML:

<a href="#" onmouseover="alert('my text');">LINK DESCRIPTION</a>

请注意每个属性值周围的引号和警报文本周围的单引号。要在PHP中获得此功能,您可以通过转义引号来实现:

$a='<a href="#" onmouseover="alert(\'';
$a.='Für die [...] Sportgepäck&#41';
$a.= '\')">LINK DESCRIPTION</a>';

答案 3 :(得分:1)

转义alert中的字符串,如下所示:

<?php

    $a = '<a href=# onMouseover=alert(';
    $a .= '\'Für die Mitnahme von Sportgepäck &#40;Scuba/Diving/Golf Equipment&#41; bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden &#40;unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck&#41\'';
    $a .= ')>LINK DESCRIPTION</a>';
    echo $a;
?>

答案 4 :(得分:0)

不要在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会将您的文本视为变量。

答案 5 :(得分:0)

<?php $a='Für die Mitnahme von Sportgepäck &#40;Scuba/Diving/Golf Equipment&#41; bis 15 KG ist es empfehlenswert dieses vorab zu buchen, da sonst am Check-In Schalter die normalen Übergewichtsraten pro KG berechnet werden &#40;unabhängig von Ihrer Gepäckauswahl – die Auswahl des aufzugebenden Gepäcks beinhaltet nicht das Sportgepäck&#41';
echo '<a href=\"#\" onmouseover=\"alert(\"'.$a.'\")\">LINK DESCRIPTION</a>';

就这么简单......