OnClick位置不起作用

时间:2009-12-24 14:43:32

标签: onclick printf

**此行无法正常工作/ r工作但$ siteurl /%s-%s.html无法工作我认为(“”)或('')的问题请帮我修复

printf("<a href='/r?%s' target=_blank onClick='window.open(location.href=$siteurl/%s-%s.html)>", $wurl, $myrow["wallpaperid"], $myrow["wallpapername"]);

3 个答案:

答案 0 :(得分:4)

不要在双引号内使用双引号(除非你正确地转义它们):

<a onclick="location.href='http://google.com'">Click Me</a>

请注意我在双引号中如何使用单引号。这使声明不会过早地被放弃。

你也可以这样写:

<a onclick="location.href=\"http://google.com\"">Click Me</a>

但这使得它的可读性稍差。

答案 1 :(得分:1)

您的onClick属性错过了尾随的单引号。这是我认为的应该是:

printf("<a href='/r?%s' target=_blank onClick='window.open(location.href=$siteurl/%s-%s.html)'>", $wurl, $myrow["wallpaperid"], $myrow["wallpapername"]);
BTW:我很难读到这一行。考虑缩进代码以使其具有人类可读性。此外,我建议您在使用printf时不要使用变量替换(字符串中的$ siteurl var)。我的意思是,使用相同的机制来做同样的事情。要么只使用var替换,要么只使用printf formattng,而不是两者都使用。例如:

$html = '
    <a  href="/r?%s" 
        target=_blank 
        onClick="window.open(location.href=%s/%s-%s.html)"
    >
';
printf($html, $wurl, $siteurl, $myrow["wallpaperid"], $myrow["wallpapername"]);

答案 2 :(得分:0)

你在.html之后缺少一个引号。

尝试:

printf("<a href='/r?%s' target=_blank onClick='window.open(location.href=$siteurl/%s-%s.html)'>", $wurl, $myrow["wallpaperid"], $myrow["wallpapername"]);
相关问题