簡體   English   中英

KnockoutJS提交綁定不適用於foreach

[英]KnockoutJS submit binding not working with foreach

您好,我無法使用帶有'foreach'綁定的敲除'submit'綁定。 我無法弄清楚這是什么錯誤。 請幫助我找到我的錯誤。

我的視圖模型是這樣的:

function poReceivingModel(){
    var self = this;
    var initial_row = new poReceivingRowModel();
    self.rows = ko.observableArray([initial_row]);
    self.saveAndAdd = function(formElement){
        alert('entered into function');
        var row = new poReceivingRowModel();
        self.rows.push(row);
    };
};

function poReceivingRowModel(){
    var self = this;
    self.building = ko.observable();
    self.isele_abc = ko.observable();
    self.isele_num = ko.observable();
    self.isele_floor = ko.observable();
};

和我的HTML綁定到'viewmodel'是這樣的:

<tbody data-bind="foreach: rows">
    <form data-bind="submit: $parent.saveAndAdd">
        <tr>
            <td>
                <!-- input field here -->
            </td>

            <td>
                <!-- input field here -->
            </td>

            <td>
                <!-- input field here -->
            </td>
            <td>
                <!-- input field here -->
            </td>
            <td>
                <button type="submit">Save and Add</button>
            </td> 
        </tr>
    </form>
</tbody>

問題是,當我單擊“添加並保存”按鈕時,未調用“ poReceivingModel”中的“ saveAndAdd”功能。 我沒有收到任何警報消息。 我嘗試在“按鈕”元素上使用“單擊”綁定來調用該函數。 該函數以這種方式調用,即我收到警報消息。

更新:在螢火蟲中,我看到窗體標記緊隨其后,並且按鈕不在“窗體”標記中。

我發現表格標簽內不能使用表格標簽。 解決方法是將表格標簽放在表格標簽中。 如果我們不想這樣做,可以將table標記更改為div,但這可能無法提供所需的輸出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM