![](/img/trans.png)
[英]Uncaught SyntaxError: Unexpected token ILLEGAL (PHP & Javascript)
[英]PHP Javascript Uncaught SyntaxError: Unexpected token ILLEGAL
我有這個 PHP 腳本,但它不能正常工作。 什么是錯誤?
<?php
if ( isset($success) || isset($failure) ) {
?>
<script>
$(document).ready(function(){
$('div.aler').css('display','block');
$("div.aler").html("<?php if($success){echo '<p class=\"success\">'.$success.'</p>';} elseif($failure) {echo '<p class=\"failure\">'.$failure.'</p>';}; ?>");
setTimeout(function(){
$("div.aler").fadeOut("slow", function (){
$("div.aler").remove();
});
}, 5000);
});
</script>
<?php }
我想一定是引號有問題:
" . $failure
有消息,但 JavaScript 沒有把它放在 HTML div 中:
div.aler
我在 Chrome 控制台中收到此錯誤消息:
未捕獲的語法錯誤:意外的令牌非法
php 輸出沒有轉義為 ",所以你必須使用 \\\\\\" 或 \\' 而不是 \\"。
順便說一句 json_encode 作為字符串會好得多......
$("div.aler").html(<?php
if($success){
echo json_encode('<p class="success">'.$success.'</p>');
}
elseif($failure){
echo json_encode('<p class="failure">'.$failure.'</p>');
};?>
);
您忘記了下面一行中的isset
,因為您使用了“||”,因此需要它 (或)在你的第一個 if 語句中,php 拋出一個錯誤,這破壞了你的 javascript
$("div.aler").html( "<?php if( $success ){ echo '<p class=\"success\">'.$success.'</p>';}elseif($failure){echo '<p class=\"failure\">'.$failure.'</p>';}; ?>");
把這個改成……
$("div.aler").html( "<?php echo ( isset( $success ) ) ? '<p class=\"success\">'.$success.'</p>' : '<p class=\"failure\">'.$failure.'</p>'; ?>");
您正試圖將其放入 div.alert ……但在您編寫的“div.aler”代碼中,您缺少一個 T ……
$("div.aler").html("<p class='<?=$success? 'success' : 'failure'?>'><?=$success? $success : $failure?></p>");
當然,在輸出之前轉義$success
和$failure
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.