2010-07-16 24 views
0

我想呼應下面的代碼:與JavaScript的問題裏面呼應

<a href="http://delicious.com/save" onclick="window.open('http://delicious.com/save?v=5&noui&jump=close&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550'); return false;" class="delicious" target="_blank">Add to Delicious</a> 

的問題是,Dreamweaver中警告我的語法錯誤,我想不通。誰可以發現語法錯誤?它自己的html和腳本工作得很好 - 問題出現在PHP回顯時。

+0

必有不僅僅是上述 – bluesmoon 2010-07-16 11:41:16

+0

你想呼應更合你的PHP。它與PHP例如echo'a href =「」etc';?如果是這樣,你將需要逃避任何單引號或雙引號,取決於你把你的字符串放在什麼。例如echo「 Luke 2010-07-16 11:44:55

回答

1

你可以使用:

<?php 
echo '<a href="http://delicious.com/save" onclick="window.open(\'http://delicious.com/save?v=5&noui&jump=close&url=\'+encodeURIComponent(location.href)+\'&title=\'+encodeURIComponent(document.title), \'delicious\',\'toolbar=no,width=550,height=550\'); return false;" class="delicious" target="_blank">Add to Delicious</a>'; 
?> 

沒有測試,但應該工作。

1

你不應該有HTML中的&,這些應該被編碼爲&amp;

<a href="http://delicious.com/save" onclick="window.open('http://delicious.com/save?v=5&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550'); return false;" class="delicious" target="_blank">Add to Delicious</a> 

這是我能發現的唯一錯誤。

0

你要逃離「字符:

echo "<a href=\"http://delicious.com/save\" onclick=\"window.open('http://delicious.com/save?v=5&noui&jump=close&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550'); return false;\" class=\"delicious\" target=\"_blank\">Add to Delicious</a>"; 

正如bluesmoon說這是更好的寫法如下:

echo <<<ENDOFECHO 
<a href="http://delicious.com/save" onclick="window.open('http://delicious.com/save?v=5&noui&jump=close&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550'); return false;" class="delicious" target="_blank">Add to Delicious</a>"; 
ENDOFECHO; 
+1

HEREDOC在這種情況下會更好 – bluesmoon 2010-07-16 12:42:31

+0

是的,你是對的。 – Toto 2010-07-16 12:50:31