從 Ajax 載入選項
從 SearchPanes 1.2.0 版本開始,可以使用 Ajax 將初始選項載入 SearchPanes。這將意味著 SearchPanes 的載入時間會快得多,因為它不必處理表格中的資料來建立選項。一旦選項載入到 SearchPanes 中,所有的處理都會在客戶端完成,您當然可以使用伺服器端處理來更改此設定。
所需的 JSON 資料結構與使用伺服器端處理時的結構完全相同。以下結構必須包含在 Ajax 回應中。
參數名稱 | 類型 | 描述 |
---|---|---|
searchPanes.options[欄位][i] |
陣列 |
此陣列包含給定欄位的 SearchPane 中記錄所需的所有資料。 |
searchPanes.options[欄位][i].label |
字串 |
這是要在 SearchPane 選項中向使用者顯示的值。 |
searchPanes.options[欄位][i].value |
字串 |
這是要在 SearchPane 選項中用於篩選、排序和搜尋的值。 |
searchPanes.options[欄位][i].total |
整數 |
這是此值在給定欄位中的條目總數。 |
searchPanes.options[欄位][i].count |
整數 |
這是給定欄位中符合目前 where 條件的條目計數。 |
以下顯示了如何使用這些選項的回傳範例。
"searchPanes":{
"options":{
"users.first_name":[
{
"label":"Aaron",
"total":"1",
"value":"Aaron",
"count":"1"
},
{
"label":"Alex",
"total":"1",
"value":"Alex",
"count":0
},
{
"label":"Alexa",
"total":"1",
"value":"Alexa",
"count":0
},
...
]
}
},
...
值得注意的是,當使用此選項時,不支援 searchPanes.cascadePanes
和 searchPanes.viewTotal
。雖然仍然可以啟用這些選項,但不建議這樣做,並且可能會導致意外行為。這是因為使用者為窗格選項提供準確的資料至關重要。
完整的範例可以在這裡找到