ページング処理に付いて考えてみる
たとえば1度に3つしか表示することが出来ない画面があったとする。
そこに6つのアイテムがあったとすると、
[P1]
6
5
4
[P2]
3
2
1
このようなページわけになるだろう。
ここでこう言うリクエストは正しいのだろうか?
http://xxxx.example.com/view.aspx?page=2
これはある一面では正しいが、ある一面では正しくない。
たとえば、2ページ目を表示している時に1つアイテムが追加されるとどうなるだろう。
[P1]
7(New)
6
5
[P2]
4
3
2
[P3]
1
1, 2, 3を見ていたのが、前のページに移動すると5, 6, 7に変化しているために、4が目にふれない。
たとえばこのようなページング処理の場合にはどうするのが望ましいのかというと、
http://xxxx.example.com/view.aspx?paging=prev&id=3
このように、id3以降のデータを表示するといた形式にすると、4, 5, 6を表示することが出来、ユーザにとっては違和感の無いページングが可能だ。
ただしこの例の場合次のページが6より大きいID表示となってしまうために、再新のページがid7の1つしか表示出来なくなってしまう。
これはこれでユーザが6より大きいデータなので、よしとするか、3件(最大表示件数)より少ない場合には、再新の3つのアイテムを表示するように切りかえるかを考慮しておくと良いだろう。