Androidでできるように、HTMLでリストビューを作成し、onClick()リスナーを設定する簡単な方法はありますか? 私の要件は、サーバーからデータを取得し、それをリストビューでユーザーに表示することです。- のようにデータが取得されます10 rows at a time
。
次に、ユーザーがさらにクリックすると、次10 rows
が取得されます。次に、ユーザーが特定のリスト項目をクリックすると、別のページに詳細が表示されます。
Androidでできるように、HTMLでリストビューを作成し、onClick()リスナーを設定する簡単な方法はありますか? 私の要件は、サーバーからデータを取得し、それをリストビューでユーザーに表示することです。- のようにデータが取得されます10 rows at a time
。
次に、ユーザーがさらにクリックすると、次10 rows
が取得されます。次に、ユーザーが特定のリスト項目をクリックすると、別のページに詳細が表示されます。
これは Mootools を使用する高速なソリューションです。入力は、リスト配列に項目を含む JSON であると考えています。
new Request.JSON(
{
url: '/list.json',
onSuccess: function(json)
{
json.list.each(function(key, val)
{
new Element('LI')
.set('text', val)
.addEvent('click', function()
{
alert('item '+key+' pressed');
// alert('item '+val.id+' pressed');
// considering val is an object instead of raw string, this way you must change set to something like this set('text', val.text)
})
.inject($('list'));
// any other thing you want add to your list item
});
}
}).get();
<ul id="list"></ul>
キーは配列内の項目の位置です。代わりに、コメントに追加した ID を使用できます。
テーブルのページネーションではなく、SlickGridのような仮想スクロールを使用することを好みます。
SlickGrid には多くの操作モードがありますが、そのコア機能は、現在見ている行の HTML のみをレンダリングすることです。スクロールすると、行が動的に作成され、必要に応じて破棄されます。これにより、数百万行のグリッドを表示できます。
API を使用すると、オンデマンドでデータをロードできるため、グリッドをスクロールするときにのみ、行がサーバーから ( nのグループで) フェッチされます。
HTML のリストは次のようになります。
<ul>
<li><a href="details/url/id">Title</li>
<li><a href="details/url/id">Title</li>
</ul>
URL は詳細ページに移動できます。
more ボタンを追加するには、javascript と ajax を使用してサーバーからさらに行を取得し、応答を取得したときにリストにさらに項目を追加します。
Ember.js をお勧めします。Ember.js にはバインディングとテンプレートの強力なシステムがあり、Javascript オブジェクトを相互に、および DOM と自動的に同期させるために使用されます。あなたがやっていることはやり過ぎですが、そのリストで何か複雑なことをするつもりなら、それだけの価値があります。
Ember.CollectionView のドキュメントは次のとおりです。
Jquery データ テーブルを試すことができます。