web-dev-qa-db-ja.com

データグリッドにトライステートフィールドを表示します。最高の細胞コントロールは何ですか?

列にtruefalsenullの3つの値を設定できるデータセットがあります。私の最初の本能は、ブール値のチェックボックスを使用し、nullの場合はコントロールを完全に非表示にすることでした。

私は正しい道にいますか、それともこれを行うためのより直感的で正しい方法はありますか?

また、jqGrid(jqueryプラグイン)を使用してこれを実装しています。これを達成するために列を定義する方法についてのアイデアはありますか?

1
Dan

問題は、ユーザーがnull列があることを知る必要があるかどうかです。それらが存在する場合、列が欠落していることに気づき、列がnullである必要があると推定できるようにそれらを表示する必要があるため、それらが「十分にスマート」であることを期待することはできません。次に、トライステートチェックボックスの3番目の状態は通常、nullではなく「混合値」として認識されるため、nullのカスタム表示を考え出す必要があるでしょう。たぶん、取り消し線、NA、またはゼロのチェックボックスが機能します。

ユーザーがnull列について知る必要がないと確信している場合は、正しい道を進んでいます。

実装に関しては StackOverflow で確認する必要がありますが、このWebサイトの範囲外です。

4

無効になっている理由を説明するツールチップの付いた無効なチェックボックスは、別の一般的なアプローチです。

1
Tom R