2015-12-16 32 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

相关问题