I can set the dataset's page size by buttons but i can't set the page size from any input elements,
What i miss here ?
export function dropdown1_change(event) { $w("#dataset1").setPageSize($w('#dropdown1').value) .then(() => { console.log("Page size set."); }) .catch((err) => { let errMsg = err.message; let errCode = err.code; }); }
i've figured it out, here's my code if someone facing the same problem :
thanks for the help @givemeawhisky
//------------------------------------------------------------------------------------------------------------------------------------------------- Product Paging Element Setup // function fillProductPagingDropdown() { const productPagingDropdownOptions = [ { "label": "5 Products/Page", "value": "5" }, { "label": "10 Products/Page", "value": "10" }, { "label": "15 Products/Page", "value": "15" }, { "label": "20 Products/Page", "value": "20" } ]; $w("#ProductPagingDropdownElt").options = productPagingDropdownOptions; } function translateProductPagingDropdown() { let desiredSize = $w('#ProductPagingDropdownElt').value let translateIt = parseInt(desiredSize) if (isNaN(translateIt)) { return 0 } return translateIt; } //---------------------------------------------------------------------------------------------------------------------------------------------- Product Paging Element Function // export function ProductPagingDropdownElt_change(event) { let productsPerPage = translateProductPagingDropdown() $w("#dataset1").setPageSize(productsPerPage) }
Yes because the code will only work if the setPageSize is an integer (whole number)
Hence why it has the number 6 in the code sample in the API reference.
https://www.wix.com/corvid/reference/wix-dataset.Dataset.html#setPageSize
$w("#myDataset").setPageSize(6) .then( () => { console.log("Page size set."); } ) .catch( (err) => { let errMsg = err.message; let errCode = err.code; } );
Syntax
function setPageSize(pageSize: number): Promise<void>
PARAMETERS
pageSize - number
The new page size.