以下のコードは、setIntervalで設定された間隔に従ってトリガーされません。最初にページがロードされると、結果セットが返されますが、Ajaxスクリプトは初めてページが読み込まれた後には実行されません。Ajax - setIntervalがトリガーされない
<html>
<head>
<script language="javascript" type="text/javascript" src="jquery.js"></script>
</head>
<body>
<!-------------------------------------------------------------------------
1) Create some html content that can be accessed by jquery
-------------------------------------------------------------------------->
<h2> Client example </h2>
<h3>Output: </h3>
<div id="output"></div>
<script id="source" language="javascript" type="text/javascript">
$(function getEvent()
{
//-----------------------------------------------------------------------
// 2) Send a http request with AJAX http://api.jquery.com/jQuery.ajax/
//-----------------------------------------------------------------------
$.ajax({
\t url: 'get_events.php', data: "", dataType: 'json', success: function(rows)
\t {
\t for (var i in rows)
\t {
\t var row = rows[i];
\t var id = row[0];
\t var vname = row[1];
\t var time = row[2];
\t $('#output').append("<b>id: </b>"+id+"<b> name: </b>"+vname+"<b> time: </b>"+time)
\t .append("<hr />");
\t }
\t }
\t });
});
$(document).ready(function() {
var run = setInterval(getEvent, 1000);
});
</script>
</body>
</html>
私はこのフォーラムでは、すべて同様の記事を見てきましたが、私はまだ私の関数がしたsetIntervalによってトリガーされるように得ることができません。以下の私のコードを見てください。どんな助けもありがとうございます。
関数を '$(...)'で囲む必要はありません。その構文は '$(document).ready(...)'の略語としてのみ使われます。それを削除し、期待どおりに動作するはずです。 – cmbuckley
ブラウザのコンソールを使用してデバッグします。それを使わないで開発することはできません。 –