以下のコードはキャッチしません。TypeError:nullの 'checked'プロパティを設定できません。 チェックボックスをオンにしてプログラムで設定する正しい方法は何ですか?まあDojoを使用してプログラマチックにチェック・ボックスのチェックを設定する
array.forEach(this._getAllCheckBoxIDs(), function(item){
dom.byId(item).checked = true;
}, this);
以下のコードはキャッチしません。TypeError:nullの 'checked'プロパティを設定できません。 チェックボックスをオンにしてプログラムで設定する正しい方法は何ですか?まあDojoを使用してプログラマチックにチェック・ボックスのチェックを設定する
array.forEach(this._getAllCheckBoxIDs(), function(item){
dom.byId(item).checked = true;
}, this);
、あなたは道場のチェックボックスのコレクションを持っている場合は、その属性を更新するDOMNODEだと一緒にチェックボックスDojoウィジェットを必要とするので、私はregistry.byId
の代わりdojo.byId
を使用するためにあなたをお勧めします。
道場クラス名: -
dijit/registry
例: - これはあなたを助けることを望ん詳細please click here...
ため
// require registry class first
array.forEach(this._getAllCheckBoxIDs(), function(item){
registry.byId(item).set("checked", true);
}, this);
:)
"this._getAllCheckBoxIDs()"にはdojoチェックボックスのIDだけが含まれていることを確認してください。 上記の解決策がうまくいかない場合は、お気軽に質問してください... –
dijitウィジェットの適切なライフサイクルを使用するには、代わりにwidget.set( 'checked'、true);を使用します。 – GibboK
yup .. Gibbok ..(y) –
T次の例は、ウィジェットのプロパティchecked
を設定する方法のプログラム例を示しています。
このスクリプトは、dijit/registry
を使用して、DOMのクエリとは逆のチェックボックスの参照を取得します。代わりに、このようなあなたのウィジェットのプロパティを直接設定する
:これはウィジェットのライフサイクルが正常に動作することができます
widgetReference.set('checked', true);
:
dom.byId(item).checked = true;
私は次のようにセッターを使用してお勧めします。
ここに住ん例:
https://jsfiddle.net/femtf4uh/
require(["dijit/form/CheckBox", "dijit/registry", "dijit/form/Button", "dojo/domReady!"], function(CheckBox, registry, Button) {
new CheckBox({
id: "checkBox0",
name: "checkBox0",
value: "option0",
checked: false,
onChange: function(event) {
}
}, "checkBox0").startup();
new CheckBox({
id: "checkBox1",
name: "checkBox1",
value: "option1",
checked: false,
onChange: function(event) {
}
}, "checkBox1").startup();
var markCheckAll = function() {
registry.toArray().forEach(function(widget) {
if (widget.type === 'checkbox'){
widget.set('checked', true);
}
});
};
markCheckAll();
});
<input id="checkBox0" />
<label for="checkBox">Option 0</label>
<br>
<input id="checkBox1" />
<label for="checkBox">Option 1</label>
<br>
これは正しいですが、 'dom.byId(項目)' '戻っnull'なので、私は' this._getAllCheckBoxIDs(賭けます) 'あなたが期待しているものを返さない... jsfiddleでより良いヘルプを提供することができる – ben
_getAllCheckBoxIDs()関数のコンテンツを共有できますか? –
あなたの返信をよろしくお願いします。 _getAllCheckBoxIDs()が呼び出されたときにチェックボックスが作成されていないことが判明しました。 –