Javascript 选中所有淘汰JS复选框

Javascript 选中所有淘汰JS复选框,javascript,typescript,knockout.js,Javascript,Typescript,Knockout.js,我需要帮助选中所有复选框,我是一名大三学生,正在从事一个使用knockout.Js和Typescript的大型项目。我想不出选择所有现有复选框会有多热 Html: 视图模型: public includedTransactions = ko.observableArray<number>(); public moveMultipleTransactions = (transactionViewer: TransactionViewer) => { v

我需要帮助选中所有复选框,我是一名大三学生,正在从事一个使用knockout.Js和Typescript的大型项目。我想不出选择所有现有复选框会有多热

Html:

视图模型:

public includedTransactions = ko.observableArray<number>();

    public moveMultipleTransactions = (transactionViewer: TransactionViewer) => {

        var cannotMoveTransaction = false;

        ko.utils.arrayForEach(this.includedTransactions(), (item) => {
            var transaction = ko.utils.arrayFirst(this.transactions(), function (t) {
                return item.toString() === t.transactionId.toString();
            });

            if (transaction.cannotMoveTransaction) {
                cannotMoveTransaction = true;
                return false;
            }
        });

        if (!cannotMoveTransaction) {
            let mmc = new MoveMultipleChargeViewModel(this.id, this.isReservationItem, this.includedTransactions());
            if (transactionViewer) {
                if (transactionViewer.isReservationItem) {
                    mmc.toDestination("item");
                    mmc.reservationItem(transactionViewer.reservationObject);
                }
                else {
                    mmc.toDestination("");
                    mmc.reservation(transactionViewer.reservationObject);
                }
            }
            this.moveMultipleCharges(mmc);
        } else {
            this.notifier.error("Error", "Once a transaction has been voided, it cannot be moved.");
        }
    } 
我试图做一个简单的复选框,将选择所有现有的复选框


谢谢您的帮助。

我不太确定如何给您提供一个与您问题中的代码相符的示例。下面是一个非常基本/简单的全选功能的实现,它将为您指明在自己的解决方案中实现全选功能的正确方向

功能虚拟机{ var self=这个; self.selectAll=ko.observeFalse; self.myList=ko.array[ {name:ko.observable'Test 1',selected:ko.observablefalse}, {name:ko.observable'Test 2',selected:ko.observablefalse}, {name:ko.observable'Test 3',selected:ko.observablefalse}, {name:ko.observable'Test 4',selected:ko.observablefalse}, {name:ko.observable'Test 5',selected:ko.observablefalse}, {name:ko.observable'Test 6',selected:ko.observablefalse}, {name:ko.observable'Test 7',selected:ko.observablefalse}, {name:ko.observable'Test 8',selected:ko.observablefalse} ]; self.toggleSelection=函数值{ self.myList.forEachx=>x.selectedvalue; } self.selectAll.subscribefunctionnewValue{ self.toggleSelectionnewValue; }; } var vm=新vm; ko.applyBindingsvm; 全选
public includedTransactions = ko.observableArray<number>();

    public moveMultipleTransactions = (transactionViewer: TransactionViewer) => {

        var cannotMoveTransaction = false;

        ko.utils.arrayForEach(this.includedTransactions(), (item) => {
            var transaction = ko.utils.arrayFirst(this.transactions(), function (t) {
                return item.toString() === t.transactionId.toString();
            });

            if (transaction.cannotMoveTransaction) {
                cannotMoveTransaction = true;
                return false;
            }
        });

        if (!cannotMoveTransaction) {
            let mmc = new MoveMultipleChargeViewModel(this.id, this.isReservationItem, this.includedTransactions());
            if (transactionViewer) {
                if (transactionViewer.isReservationItem) {
                    mmc.toDestination("item");
                    mmc.reservationItem(transactionViewer.reservationObject);
                }
                else {
                    mmc.toDestination("");
                    mmc.reservation(transactionViewer.reservationObject);
                }
            }
            this.moveMultipleCharges(mmc);
        } else {
            this.notifier.error("Error", "Once a transaction has been voided, it cannot be moved.");
        }
    }