onclick
  • printf
  • 2009-12-24 70 views 0 likes 
    0

    **这行不能正常工作/ r工作,但$ siteurl /%s-%s.html不工作我认为问题的(“”)或('')请帮我修复它OnClick的位置不工作

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

    回答

    1

    您的onClick属性遗漏了尾部单引号。这是我认为它应该是:

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

    顺便说一句:我读这个单线很难读。考虑缩进你的代码以使其可读。另外,当你使用printf时,我建议不要使用变量替换(字符串中的$ siteurl var)。我的意思是,使用相同的机制来做同样的事情。要么只使用var替换,要么只使用printf格式,不能同时使用。例如:

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

    你错过的.html后单引号)

    尝试:

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

    不要使用双引号在双引号内(除非你逃脱他们正确):

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

    注意我如何在双引号内使用单引号。这可以防止声明被过早抛弃。

    你可能也写这样的:

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

    但是,这使得它略少可读性。

    相关问题