簡體   English   中英

將google.visualization.datatable與checkbox和KnockOut數據綁定相結合

[英]Combining google.visualization.datatable with checkbox and KnockOut data-bind

我正在將“普通”HTML表格轉換為Google的DataTable。 主要是因為它會給我固定標題和排序。 感謝為google.visualization.datatable創建高級KnockOut綁定處理程序,我設法為DataTable創建了一個KnockOut綁定處理程序。 這對於只讀數據非常有用

現在我想轉換一個在每一行都有一個復選框和一個輸入文本框的表。 創建這些表單元素不是問題,但我在它們上使用KnockOut數據綁定。 如何將這些數據綁定添加到我的數據表中? 我試過這個:

data.setCell(
    0, 0, "<input type='checkbox' data-bind=checked: ' " + order.inOrder + "'/>"
);

data.setCell(
    0, 0, "<input type='checkbox' data-bind=checked: order.inOrder />"
);

但兩者都不起作用。 當然我嘗試使用谷歌找到答案,但到目前為止還沒有運氣。

編輯:更多背景信息:我們有一個相當復雜的頁面,它使用AJAX從服務器獲取一些數據並填充表格。 我們也使用RequireJS,雖然Google.Visualization部分在RequireJS之外,因為我無法將其集成;)

該頁面是訂單系統向導的一部分,復選框是“不訂購”,輸入框用於填寫庫存。 該表是:

checkbox|Product name|amount|input box for stock|amount minus stock|price

“下一步”按鈕需要保存整個表格,包括復選框和庫存的(更新)值。

不要認為數據綁定適用於Google圖表

即使它會,也看不到多少好處,因為無論如何你需要手動加載DataTable

因此,只需在加載DataTable時提供所需的值,
就像是...
data.setCell(0, 0, "<input type='checkbox' " + ((order.inOrder === true) ? "checked" : "") + "/>");

其他想法...

如果表格圖表使用分頁按鈕,則只渲染當前頁面的行,因此必須以某種方式在每個'page'事件上進行綁定

使用表格圖表中的復選框輸入將導致'select'事件在單擊表格行時觸發

暫無
暫無

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

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