0

hobo の table-plus 機能によって提供される並べ替えに問題があります。さまざまなテーブルを表示するための JavaScript 関数がいくつかあるとします。

function showTable1() {
    ...
}


function showTable2() {
    ...
}


function showTable3() {
    ...
}

Event.observer(windows, 'load', showTable1);

私はテーブルを表示するために使用しています。ご覧のとおり、デフォルトで表 1 が表示されます。たとえば、表 2 を表示した後で並べ替えを試みるたびに、ページが更新され、自動的に表 1 の表示に戻ります。

デフォルトの動作をハンドラーに置き換えることを計画しています:

function showHandler() {
    if (case1) showTable1();
    else if (case2) showTable2();
    else showTable3();
}

テーブルプラスの動作にクッキーを追加することで実装できますか? それを行うより良い方法はありますか?

4

1 に答える 1

1

RailsまたはHoboアプリですべてをサーバー側またはすべてクライアント側で行うと、一般的に最も簡単です。

したがって、hobo_data_tablesに切り替えてクライアント側でソートするか、サーバー側で表示の切り替えを行います。後者を行うには、次のようなフォームを追加できます。

<form action="">
  <input type="hidden" name="search" value="&params[:search]"/>
  <input type="hidden" name="sort" value="&params[:sort]"/>
  <input type="hidden" name="page" value="&params[:page]"/>
  <input type="hidden" name="table" value="2"/>
  <submit label="Show page 2"/>
</form>

次に、各テーブルの周りに if ステートメントを配置します。

<if test="&params[:table].to_i==2">
   <h2> table 2 </h2>      
   <table-plus .../>
</if>

また、ホーボー ユーザーに投稿することをお勧めします。そこには、より活発なコミュニティがあります。

于 2012-09-11T20:06:01.903 に答える