0

私のモバイル Web アプリ (PhoneJS を使用) では、dxList を使用していくつかのレコードを表示しています。各リストの「アイテム」の横にチェックボックスがあり、レコードを一括削除または送信できます。1 つ以上のチェックボックスがオンになっているかどうかを確認する方法を知る必要があります。

通常の Knockout でこれを実行できることはわかっていますが、PhoneJS フレームワークが実際に「実際の」HTML チェックボックスを作成するのではなく、チェックボックスのように機能するクリック可能な要素を作成するわけではありません。

したがって、1 つ以上のチェックボックスがオンになっている場合は、送信および削除ボタンを表示する必要があります。チェックボックスがあるかどうかを判断する方法を知る必要があるだけです。

私はこれについてオンラインでどこでも見てきましたが、ソリューションはREALチェックボックス入力を使用したノックアウト用です...

dxList のコードは次のとおりです。

<div data-bind="dxList:{dataSource: list_data, grouped:true }">
    <div data-options="dxTemplate:{name:'group'}">
        <b><span data-bind="text: $data.key"></span></b>
    </div>  
    <div data-options="dxTemplate:{name:'item'}">
        <span data-bind="text: $data.item_value"></span>
        <div data-bind="dxCheckBox: { }" style="float:right"></div>
    </div>   
</div>

「checked」を監視可能な配列にバインドしようとしましたが、それはすべてのチェックボックスに影響します。

誰でもこれで私を助けることができますか?ありがとう!

4

2 に答える 2

0

最も簡単な MVVM のアプローチは、dxCheckBox.checkedオプションをリスト アイテム ビューモデルのブール型プロパティにデータ バインドすることです。次に、アイテムを反復処理して、チェックされているものを理解できます。

あなたはあなたが言った

「checked」を監視可能な配列にバインドしようとしました

スカラー プロパティを配列にバインドする理由は明確ではありません。

実際には、純粋な HTML アプローチと大差ありません。PhoneJS ウィジェットを太い HTML タグと同じように扱うことができます。

于 2013-10-18T13:15:48.983 に答える