0
我的功能,它的工作:PHP調用腳本函數,與返回值 - 未捕獲的SyntaxError:意外的標記非法
<script>
function createCookie(name,value,sec) {
if (sec) {
console.log('createCookie: '+name+', '+value+', '+sec);
var date = new Date();
date.setTime(date.getTime()+(sec*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0)
{ console.log('readCookie: '+name+',value: '+c.substring(nameEQ.length,c.length));
return c.substring(nameEQ.length,c.length);
}
}
console.log('readCookie: '+name+', NULL');
return null;
}
</script>
調用bouth工作(如我在控制檯中看到)
<?
echo '<script type="text/javascript">createCookie("'.$cookie_random_photo.'","'.$randf.'",60);</script>';
echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>';
?>
但是當我探測得到輸出時,這使得未捕獲的語法錯誤:意外的令牌非法的
<?
ob_start();
echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>';
$returned_value = ob_get_contents();
ob_end_clean();
?>
或
<?
ob_start();
echo '<script type="text/javascript">readCookie("'.$cookie_random_photo.'");</script>';
$returned_value = ob_get_clean();
?>
這產生錯誤和屏幕輸出中「');」,readCookie()沒有被調用。
如何正確地得到$ returned_value?
編輯全JS錯誤
VM119792:1 Uncaught SyntaxError:
Unexpected token ILLEGAL
c.extend.globalEval @ jquery.js:29
Qa @ jquery.js:16
c.extend.each @ jquery.js:30
c.fn.extend.domManip @ jquery.js:110
c.fn.extend.append @ jquery.js:103
c.fn.extend.html @ jquery.js:107c.ajax.complete @ jquery.js:120
d @ jquery.js:124
x.onreadystatechange @ jquery.js:129
打開生成的html/JS,看看有什麼不對勁的地方。 –
你可以發佈完整的錯誤嗎?這絕對是一個PHP錯誤? – Chris
'未捕獲的SyntaxError:意外的令牌ILLEGAL'是一個JavaScript錯誤消息。 – Quentin