0

並べ替えとフィルターが可能なテーブルがあり、選択フィールドを使用してフィルターを変更すると、すべて正常に機能します。ただし、ユーザーが x 秒後にフィルターを選択しない場合は、指定されたオプションに基づいてフィルター処理したいと考えています。一定時間後に選択を変更しても問題ありませんが、フィルタリングする JavaScript はこれが change() イベントであることを認識しません。変更として認識させるにはどうすればよいですか、または他の方法で一定期間後にデフォルトの選択を登録するにはどうすればよいですか?

参考までに、テーブルのフィルタリング/並べ替えに次のスクリプトを使用しています。

http://www.javascripttoolbox.com/lib/table/

Table.filter(this,this) に独自の値を渡したいと思います。

4

2 に答える 2

1

私はこのようなものがうまくいくはずだと思います:

var defaultFilter = 3;
var filterTimeout = 5000;

window.setTimeout(function() {
    var select = document.getElementById("select");
    select.selectedIndex = defaultFilter;
    Table.filter(select, select);
}, filterTimeout);
于 2013-07-05T16:34:38.063 に答える
0

HTML:

<select id="select" onchange="Table.filter(this,this)">... </select>

Javascript:

var select = document.getElementById("select");
var secondsToChange = 2;

select.onclick = function() {
  window.setTimeout(function(){select.onchange.apply(select)},secondsToChange*1000);
};

私はそれがうまくいくはずだと思う...

于 2013-07-05T16:26:30.787 に答える