「onclick」オプションのあるテーブルとフィールドがあります。
<td class="name" onclick="ajax_update_entries('<?php echo $field['Player']['name']; ?>')">
関数を呼び出します:
function ajax_update_entries(player_name)
{
$.post('http://mysite.com/entries/get_entries/' + player_name, function(data)
{
$('#gameText').html(data);
});
setTimeout('ajax_update_entries(player_name)', 30000);
}
それが非常に良いことは、テーブルフィールドをクリックした後に要求されたページに行くことです。それが非常に間違っているのは、それを更新する必要があるsetTimeoutの「player_name」パラメーターを認識しないことです。Operaコンソールでは、次のように返されます。
キャッチされない例外:ReferenceError:未定義の変数:player_name
IEは、「player_name」の定義はないと言っています。
しかし、その一方で、私が一緒に行く場合:
setTimeout('ajax_update_entries("Michael Jordan")', 30000);
それは機能し、パラメータMichaelJordanでページを更新します。
だから私の質問は:このスクリプトの何が問題になっていますか?つまり、なぜ変数がplayer_name
突然忘れられるのですか?それを修正する方法は?