チェックボックスを表示します。
必須属性: selection
とvalue
, またはchecked
属性 | データ型 | 説明 |
---|---|---|
checked |
true/false |
チェックボックスのオン/オフ。変数をバインディングしておくと、チェックされたときにtrueが代入される。 |
value |
String |
チェックしたときにselection属性に代入するデータ。value属性とselection属性のデータが同じならチェックボックスはオンになる。 |
selection |
Array |
チェックしたとき、value属性のデータがこの属性に代入される。 |
enabled |
true/false |
入力の可否。falseであればチェックできないようにする。 |
CKCheckboxとCKRadioButtonは、フィールドより少し複雑になります。これらのエレメントは「checked属性」か「value属性とselection属性」のどちらかの組み合わせを使います。
checked属性を使う場合は、単純にオン/オフのみでチェックボックスを操作します。つまり、1つのチェックボックスにつき1つの変数を割り当てることになります。
<cgikit name=Form> <cgikit name=Checkbox1>One</cgikit> <cgikit name=Checkbox2>Two</cgikit> <cgikit name=Checkbox3>Three</cgikit> <cgikit name=Submit/> </cgikit>
Form : CKForm { } Checkbox1 : CKCheckbox { checked = checkedOne; } Checkbox2 : CKCheckbox { checked = checkedTwo; } Checkbox3 : CKCheckbox { checked = checkedThree; } Submit : CKSubmitButton { }
class Checkbox < CKComponent attr_accessor :checkedOne, :checkedTwo, :checkedThree end
このようにchecked属性にそれぞれ別の変数を割り当てて、どのチェックボックスがチェックされているか判断します。チェックされると、変数にはtrueが代入されます。
value属性にチェックボックスのデータを設定すると、そのデータがチェックしたときselection属性に代入されます。また、value属性とselection属性のデータが同じであればチェックボックスはオンになります。
基本的な動作はchecked属性を使う場合と変わりませんが、チェック時に代入されるデータが異なります。checked属性ではtrueが代入されますが、この場合value属性で設定したデータが代入されることになります。
<cgikit name=Form> <cgikit name=Checkbox1>One</cgikit> <cgikit name=Checkbox2>Two</cgikit> <cgikit name=Checkbox3>Three</cgikit> <cgikit name=Submit></cgikit> </cgikit>
Form : CKForm { } Checkbox1 : CKCheckbox { value = "One"; selection = checkedOne; } Checkbox2 : CKCheckbox { value = "Two"; selection = checkedTwo; } Checkbox3 : CKCheckbox { value = "Three"; selection = checkedThree; } Submit : CKSubmitButton { }
class Checkbox < CKComponent attr_accessor :checkedOne, :checkedTwo, :checkedThree end