如何訪問JavaScript內部的codeigniter會話變量?如果我在純php中創建會話變量,並在javascript中訪問它,它會給我結果,但在codeigniter會話變量的情況下,它會給我語法錯誤。訪問javascript內部的codeigniter會話變量
我用下面的代碼行訪問笨會話變量在我的js文件
var m1 = "<?php echo json_encode($this->session->userdata('max_age')); ?>";
如何訪問JavaScript內部的codeigniter會話變量?如果我在純php中創建會話變量,並在javascript中訪問它,它會給我結果,但在codeigniter會話變量的情況下,它會給我語法錯誤。訪問javascript內部的codeigniter會話變量
我用下面的代碼行訪問笨會話變量在我的js文件
var m1 = "<?php echo json_encode($this->session->userdata('max_age')); ?>";
「我用下面的代碼行訪問 笨會話變量我js文件 「
你不能把PHP代碼的.js文件裏面FIL即它不會被解析。您必須將您的代碼放入您的.js文件被調用的PHP文件中。
例如:
<script type="text/javascript">
var m1 = <?php echo json_encode($this->session->userdata('max_age')); ?>;
</script>
<script type="text/javascript" src="script.js"></script>
正如我在上述評論提到的,問題很可能是由一個空的php回波輸出引起的。你在上面說過,你不會在你的回聲聲明中引用引號。所以,在你的代碼看起來是這樣的:
var m1 = <?php echo json_encode($this->session->userdata('max_age')); ?>;
如果你的PHP變量$this->session->userdata('max_age')
是空的,這可能是一個問題。因爲如果是這樣的話,json_encode會輸出一個空字符串。請在瀏覽器中做了一個「查看源文件」的一下,如果該行看起來是這樣的:
var m1 = ;
如果是這樣,你找到了你的問題。以上是無效的,並會導致語法錯誤。
這對我來說看起來是正確的。有什麼問題? – 2012-03-23 15:25:54
它給我在下一行的語法錯誤 – 2012-03-23 15:35:39
在下一行發生錯誤?那麼,下一行是什麼? – 2012-03-23 15:39:29