2015-12-16 33 views
0

我有一個奇怪的情況,其中我將php變量轉換爲javascript以與jquery一起使用它。但是,當我第一次打開頁面時,變量沒有定義,當我刷新頁面或再次進入同一鏈接時,變量將被加載。變量不會加載到javascript,直到刷新

呼應,看起來

<script type="text/javascript"> 
      $(document).ready(function() { 
       console.log('test'); 
       window.GlobalVar = {show_table : "<tr><td>%.0f</td><td>%s</td><td>&#8364; %0.02f</td><td>&#8364; %0.02f</td><td><a href=''><img class='delete_task' src='/brugginkadmin/public_html/images//icons/delete.png' data-id='%s'></a></td><td><input type='checkbox' name='delete_query' value='%s'></td></tr>"}; 
      }); 
    </script> 

而且在他們沒有reconized後jQuery的功能,直到刷新的JavaScript。

我在這些腳本之前包含了jquery。

結論: 問題是這個變量window.GlobalVar.show_table後來在javascript中沒有定義,但是在刷新之後,它是。

+1

我不明白這個問題.. php代碼在哪裏? –

+0

這與PHP有什麼關係? – developerwjk

+0

對不起,選擇標籤太快了。 window.GlobalVar行與PHP呼應。但我認爲這不是問題。問題是這個變量window.GlobalVar.show_table在稍後的javascript中沒有定義,但是在刷新之後,它是。 – Perrykipkerrie

回答

0

在腳本標記中迴應PHP會導致奇怪和不一致的行爲。在PHP中構建整個腳本,標籤和所有內容,然後回顯到頁面,看看它是否更好。

var script = <<<SCR 
    <script type="text/javascript"> 
      $(document).ready(function() { 
       console.log('test'); 
       window.GlobalVar = {show_table : "<tr><td>%.0f</td><td>%s</td><td>&#8364; %0.02f</td><td>&#8364; %0.02f</td><td><a href=''><img class='delete_task' src='/brugginkadmin/public_html/images//icons/delete.png' data-id='%s'></a></td><td><input type='checkbox' name='delete_query' value='%s'></td></tr>"}; 
      }); 
    </script> 
SCR; 
echo script; 
+0

抱歉沒有工作。仍然是同樣的問題 – Perrykipkerrie

相關問題