2013-02-26 82 views
0

我試圖從PHP循環調用JavaScript函數。該調用從PHP循環傳遞一個id,然後根據它是否在cookie中找到id來設置類。目前我只收到:從PHP調用JavaScript函數,同時頁面加載

ReferenceError: getFaveClass() is not defined

我的代碼如下 -

?> 
<script>getFaveClass(<?php echo $row->id; ?>);</script> 
<?php 

有我丟失的東西或這樣做的更好的辦法?

+4

'PHP = server-side; JS =客戶side'。它根本行不通 – 2013-02-26 22:32:13

+0

我意識到兩種語言的重要性,但肯定可以在頁面加載時調用函數嗎?什麼是實現這一目標的適當方式? – Tom 2013-02-26 22:34:36

+0

@SamuelCook理論上可以在PHP生成頁面時調用javascript函數。我已經看到了用於進度條的技巧。例如:http://www.php.net/manual/en/function.flush.php#52147。但是你需要刷新輸出來做類似的事情。 – Tchoupi 2013-02-26 22:35:55

回答

1

你寫的東西沒有問題(雖然我個人使用json_encode以確保正確處理值)。

所有的錯誤意味着你還沒有定義getFaveClass函數。如果它位於外部.js文件中,請確保包含它。

+0

感謝您的幫助。這是一個愚蠢的錯誤 - getFaveClass在一個外部的.js文件中,並在頁面底部被調用 - 已經將它移動到頭部,並且一切正常。 – Tom 2013-02-27 07:51:47

0

如果輸出id,腳本執行時數據應該在頁面上。將PHP作爲初始數據回覆到JavaScript調用很好。我建議你檢查並看看實際輸出的是什麼,而不是你的PHP源代碼,以便調試JS錯誤。

您的問題可能是如果$row->id == ""發生。

0

有你聲明的功能getFaveClass(),是那裏的<?php echo $row->id; ?>

值請檢查您的函數名要準確,包括在那裏你一直在呼籲這個情況。

只要檢查它應該運行。因爲我看不出你曾經共享過的代碼有什麼問題。

相關問題