角度2アプリでチェックボックスがオンになっているかどうかに基づいて配列から要素を押したり取り除いたりすることを処理しようとしています。私はネイティブのHTMLがこのロジックの何らかの形を処理できることを知っていますが、私はターゲットとするものを正確に把握しようとしています。これは私の機能のようです:チェックボックスの選択を解除して配列から項目を削除しようとしています
private onOptionSelected(option)
{
let optionObj = {
option: option,
complex: false
};
if (option)
{
this.record.requestedOptions.push(optionObj);
}
else if (!option)
{
this.record.requestedOptions.splice(option);
}
}
今、最初の部分が動作します。チェックボックスの1つをチェックすると、その項目が配列に追加され、バックエンドに保存されます。
しかし、そのアイテムのチェックを外すと、そのアイテムをアレイから削除するのではなく、そのアクションによって新しいアイテムがアレイに追加されます。
ここで、ネガティブなケースを処理するにはどうすればいいですか - アイテムがチェックされていないので、アレイから削除する必要がありますか? 「checked」や「!checked」などのネイティブHTML属性をターゲットにすることはできますか?あなたはあなたのコードを書かれている方法で問題がいくつかあり
<div>
<md-checkbox
(change)="onOptionSelected('A')">Option A
</md-checkbox>
<md-checkbox
(change)="onOptionSelected('b')">Option B
</md-checkbox>
<md-checkbox
(change)="onOptionSelected('c')">Option C
</md-checkbox>
</div>
:未定義のプロパティ 'innerHTMLプロパティ' を読み取ることができません – Ademo
innerHTMLを使うのではなく、 "value"を使って何かを渡すことができるはずだと思います。 – Ademo
私は角度を持った文脈があまりありませんが、これは基本的な要点です。引数として渡された '$ event'がイベントオブジェクトであると私は考えていました。 –