0

脚本

$(document).ready(function () {
    var meter_id = $("#MeterReadingTypes li a.link_active").attr("id");
    var range_id = $("#DateRangeTypes li a.link_active").attr("id");

    window.setInterval(PostMainChartValues(meter_id, range_id), 5000);
    ...
});

function PostMainChartValues(meter_id, range_type_id) {
    $.ajax({
        ...
    });
}

window.setInterval はトリガーされません。setInterval にアラートを書き込むと、機能します。これの理由は何ですか?関数がトリガーされないのはなぜですか? chrome DevToolsで追跡しましたが、動きはありません。

4

2 に答える 2

3

の最初のパラメータsetIntervalは、関数(または可能evalな文字列) である必要があります。現在、 を呼び出しPostMainChartValues()て、その戻り値を に渡していますsetInterval()

次のように変更します。

window.setInterval(function() {
    PostMainChartValues(meter_id, range_id);
}, 5000);
于 2013-05-24T09:10:01.263 に答える
0

これは ajax の問題ではありません。パラメータを間違ったモードで使用していsetIntervalます。

function次のような匿名を作成します。

window.setInterval(function () { PostMainChartValues(meter_id, range_id); }, 5000);
于 2013-05-24T09:11:20.740 に答える