我混淆了一些JS代碼,它似乎在firefox中工作(沒有錯誤和功能正確),但拋出'SyntaxError:意外的標記'='。在參數聲明後需要''''或''''。'在safari中。 我在PHP中的下列對象SyntaxError:意外的標記'='。在參數聲明後需要''''或''''。'在safari
$items = Array ([0] => stdClass Object ([id] => 1 [class] => class_a [make] => Kia [model] => Picanto [features] => 3,4,5,6,7,8 [colour] => white [engine] => 1000cc [ordering] => 1 [published] => 1 [image] => images/vehicles/picanto.jpg) [1] => stdClass Object ([id] => 2 [class] => motorbike [make] => Honda [model] => Transalp [features] => [colour] => blue [engine] => 650cc [ordering] => 6 [published] => 1 [image] =>) [2] => stdClass Object ([id] => 3 [class] => moped [make] => Sym [model] => SR [features] => [colour] => white [engine] => 150cc [ordering] => 5 [published] => 1 [image] =>) [3] => stdClass Object ([id] => 4 [class] => class_b [make] => Suzuki [model] => Splash [features] => 12 [colour] => Red [engine] => 1300cc [ordering] => 3 [published] => 1 [image] => images/vehicles/suzuki_splash.jpg) [4] => stdClass Object ([id] => 5 [class] => class_f [make] => Peugot [model] => 307 Cabrio [features] => 8,9,10,11 [colour] => Black [engine] => 1600cc [ordering] => 4 [published] => 1 [image] => images/vehicles/peugeot307.jpg) [5] => stdClass Object ([id] => 6 [class] => class_a [make] => Hyundai [model] => Atos [features] => [colour] => white [engine] => 1100cc [ordering] => 2 [published] => 1 [image] => images/vehicles/atos.jpg))
並在瀏覽器中json_encode行如下
var items = [{"id":"1","class":"class_a","make":"Kia","model":"Picanto","features":"3,4,5,6,7,8","colour":"white","engine":"1000cc","ordering":"1","published":"1","image":"images\/vehicles\/picanto.jpg"},{"id":"2","class":"motorbike","make":"Honda","model":"Transalp","features":"","colour":"blue","engine":"650cc","ordering":"6","published":"1","image":""},{"id":"3","class":"moped","make":"Sym","model":"SR","features":"","colour":"white","engine":"150cc","ordering":"5","published":"1","image":""},{"id":"4","class":"class_b","make":"Suzuki","model":"Splash","features":"12","colour":"Red","engine":"1300cc","ordering":"3","published":"1","image":"images\/vehicles\/suzuki_splash.jpg"},{"id":"5","class":"class_f","make":"Peugot","model":"307 Cabrio","features":"8,9,10,11","colour":"Black","engine":"1600cc","ordering":"4","published":"1","image":"images\/vehicles\/peugeot307.jpg"},{"id":"6","class":"class_a","make":"Hyundai","model":"Atos","features":"","colour":"white","engine":"1100cc","ordering":"2","published":"1","image":"images\/vehicles\/atos.jpg"}];
它看起來正確的,所以我不把下面的JavaScript
<script type="text/javascript">
jQuery(document).ready(function($){
var items = <?PHP echo json_encode($items)?>;
console.log(items);
for (var i = 0, len = items.length; i < len; i++) {
lookup[items[i].id] = items[i]; //access the new lookup object using lookup[id].variable i.e lookup[1].image
}
var vId ="";
function updateImg(img, display=true){
if (display == true){
$("#vehicle-image").show(500);
}else{
$("#vehicle-image").hide(500);
}
$("#vehicle-image").attr("src", '/'+ img);
}
$('#jform_vehicle').on('change', function() {
var vId = parseInt(($("#jform_vehicle").chosen().val()));
console.log (vId);
if (isNaN(vId) !==true){
var img = lookup[vId].image;
console.log ('img=' + img);
updateImg(img);
}else{
console.log('not a number');
var img = "";
updateImg(img, false)
}
});
});
</script>
知道是什麼導致了錯誤。有任何想法嗎? 乾杯。
Safari瀏覽器指向這裏的錯誤代碼 safari error
分享錯誤來臨的代碼 – C2486
格式化您的問題時請格外小心。我試圖爲你格式化PHP代碼,雖然它不是接近於語法正確的事件,因爲我假設你已經從某種記錄器中複製它。 –
我點擊發送它認爲它會預覽代碼。我的錯誤和值得的負分數!從代碼中可以看出,我是一個完全新手。 – philip