Search.../

startsWith( )

Refines a query or filter to match items whose specified property value starts with a specified string.

Description

The startsWith() function refines a WixDataQuery or WixDataFilter to only match items where the value of the specified property starts with the defined string. Matching with startsWith() is not case sensitive, so "TEXT" starts with "tex".

You can only use startsWith() with a property whose value is a String or Reference. When using a Reference, startsWith() matches by the ID of the referenced item as Strings.

Syntax

function startsWith(propertyName: string, string: string): WixDataQuery

startsWith Parameters

NAME
TYPE
DESCRIPTION
propertyName
string

The property whose value will be compared with the string.

string
string

The string to look for at the beginning of the specified property value.

Returns

A WixDataQuery object representing the refined query.

Return Type:

Was this helpful?

Add a starts with filter to a query

Copy Code
1let newQuery = query.startsWith("last_name", "M");
Create a query, add a starts with filter, and run it

Copy Code
1import wixData from 'wix-data';
2
3// ...
4
5wixData.query("myCollection")
6 .startsWith("last_name", "M")
7 .find()
8 .then((results) => {
9 if(results.items.length > 0) {
10 let items = results.items;
11 let firstItem = items[0];
12 let totalCount = results.totalCount;
13 let pageSize = results.pageSize;
14 let currentPage = results.currentPage;
15 let totalPages = results.totalPages;
16 let hasNext = results.hasNext();
17 let hasPrev = results.hasPrev();
18 let length = results.length;
19 let query = results.query;
20 } else {
21 // handle case where no matching items found
22 }
23 })
24 .catch((error) => {
25 let errorMsg = error.message;
26 let code = error.code;
27 });
Create a query, add a starts with filter, and run it

Copy Code
1import wixData from 'wix-data';
2
3// ...
4
5wixData.query("myCollection")
6 .startsWith("last_name", "M")
7 .gt("age", 25)
8 .ascending("last_name", "first_name")
9 .limit(10)
10 .find()
11 .then((results) => {
12 if(results.items.length > 0) {
13 let items = results.items;
14 let firstItem = items[0];
15 let totalCount = results.totalCount;
16 let pageSize = results.pageSize;
17 let currentPage = results.currentPage;
18 let totalPages = results.totalPages;
19 let hasNext = results.hasNext();
20 let hasPrev = results.hasPrev();
21 let length = results.length;
22 let query = results.query;
23 } else {
24 // handle case where no matching items found
25 }
26 })
27 .catch((error) => {
28 let errorMsg = error.message;
29 let code = error.code;
30 });