1

私は動作するSpryフィルター機能を持っています:

function ffRed(ds, row, index){ var c = row["color"]; return c == 'red' ? row : null; };

これは、チェックボックスのクリックハンドラーから呼び出される関数によって切り替えられます。

function ToggleFilter(enable, f)
{
  if (enable)
ds1.addFilter(f, true);
  else
ds1.removeFilter(f, true);
}

チェックボックスはどこにありますかonclick="ToggleFilter(this.checked, ffRed);"

チェックボックスからパラメーターを渡す方がよいので、すべてのチェックボックスに同じハンドラーとフィルターを使用して、クリックハンドラーからどの色(「赤」など)を渡すことができます。

ToggleFilter関数にパラメーターを渡すことは問題ありませんが、filterFunctionに渡す方法は?

このようにいくつかの意味があります:

function ffColor(ds, row, index, clr){ var c = row["color"]; return c == clr ? row : null; };

これが行われない場合を除いてds1.addFilter(f, true, clr)、clrにクリックハンドラから文字列「red」が渡されたと仮定します。その部分は機能しますが、私は明らかにそれをフィルター関数に間違って渡しています。

4

0 に答える 0