嗨有一個PHP模板,顯示一個html頁面。在其中有一個調用js文件來初始化一些jquery插件。在html頁面中獲取變量值並在外部使用它js
模板上我有這樣的代碼:
(function($) {
$(document).ready(function(){
var adlow = <?php echo $jSeblod->disparities_tick_lower->value ?>;
var adhigh = <?php echo $jSeblod->disparities_tick_upper->value ?>;
var adtickno = <?php echo $jSeblod->disparities_tick_divisions->value ?>;
});
})(jQuery);
那麼init.js頁我叫adlow,adhigh和adtickno上。 我得到變量未定義的錯誤。
php正在返回正確的值。但是然後外部init文件沒有得到它們。我是否需要做一些特殊的事情來讓init文件能夠使用這些變量? 我所做的只是把他們插入...
謝謝,我對這些頁面之間的交互有點朦朧。
嗨,這正是我的意思。我不明白整個全球聲明的事情。但是balusc也是正確的。沒有其他答案,答案都沒有。你需要在init.js加載之前聲明全局變量。 – liz 2010-07-01 15:25:45
就這樣,我很清楚。 MYAPP是新的命名空間?並且我用這個名字空間聲明的任何變量將在全局上可用? – liz 2010-07-01 15:30:49
'MYAPP'是一個全局JavaScript對象,被用作一個名稱空間。由於'MYAPP'是全球性的,所以添加到它的任何變量也都可以全局訪問,是的。 – 2010-07-01 15:39:07