2010-11-27 4 views
1

Le code ci-dessous est dans mon script javascript/jquery, mais pour une raison quelconque, Firebug me dit que j'ai une "erreur de syntaxe: var fbbirthday = ;\n".Erreur de syntaxe inattendue: " n" dans javascript/jquery

var fbbirthday = <?php echo $fb_day_of_birth; ?>; 
var fbbirthmonth = <?php echo $fb_month_of_birth; ?>; 
var selectbirthyear = $('#ad_engine_birth_date_year').val(); 

Pendant ce temps, le navigateur affiche effectivement les éléments suivants (parce que les variables php $fb_day_of_birth et $fb_month_of_birth sont vides lorsque l'utilisateur est pas connecté à Facebook).

var fbbirthday = ; 
var fbbirthmonth = ; 
var selectbirthyear = $('#ad_engine_birth_date_year').val(); 

J'ai passé un certain temps à essayer de comprendre où le \n que Firebug trouve vient. Toute aide serait appréciée!

+4

'var fbbirthday =;' javascript est invalide. –

Répondre

4

Cette déclaration est illégale que le côté droit de l'affectation est manquante:

var fbbirthmonth = ; 

Ceci est probablement dû à $fb_day_of_birth qui est une chaîne vide. Vous devriez vérifier et utiliser une autre valeur comme:

var fbbirthday = <?php echo is_numeric($fb_day_of_birth) ? $fb_day_of_birth : 0; ?>; 

Ou mieux utiliser json_encode:

var fbbirthday = <?php echo json_encode($fb_day_of_birth); ?>; 
+1

+1 pour 'json_encode()'! C'est définitivement le chemin à parcourir. – jwueller

+0

Génial, merci pour l'aide. Cela a résolu le problème! – Mark

Questions connexes