@shantanukumar847
I started wix code and created a database in the edit site menu. Then I wrote this code for filtering dropdown and so on
Code:
// For full API documentation, including code examples, visit Velo API Reference - Wix.com
import wixData from “wix-data”;
import wixLocation from ‘wix-location’;
let lastFilterTitle;
let lastFilterContinent;
let lastPreis;
let debounceTimer;
var cleanList;
$w.onReady( function () {
wixData.query(‘Holzoptik’).limit(1000).find().then(res => {
const uniqueTitles = getUniqueTitles(res.items);
cleanList = buildOptions(uniqueTitles);
cleanList.unshift({
“value”: ‘’,
“label”: ‘Alle Fliesen’
});
$w(‘#iFliesenoptik’).options = cleanList;
})
function getUniqueTitles(items) {
const titlesOnly = items.map(item => item.fliesenoptik);
return [… new Set(titlesOnly)];
}
function buildOptions(uniqueList) {
return uniqueList.map(curr => {
return { label: curr , value: curr };
});
}
$w("#repeater1").onItemReady(($w, dataItem, index) => {
let linkToDynamicPage = dataItem.linker;
$w(‘#button3’).onClick(() => {
wixLocation.to(linkToDynamicPage);
});
$w('#container1').onClick(() => {
wixLocation.to(linkToDynamicPage);
});
});
});
export function iTitle_keyPress(event, $w) {
if (debounceTimer) {
clearTimeout(debounceTimer)
debounceTimer = undefined;
}
debounceTimer = setTimeout(() => {
filter($w(‘#iTitle’).value, lastFilterContinent, lastPreis);
}, 200);
}
function filter(title, optik, preisFilterEingabe) {
if (lastFilterTitle !== title || lastFilterContinent !== optik || lastPreis !== preisFilterEingabe) {
let newFilter = wixData.filter();
if (title)
newFilter = newFilter.contains(‘title’, title);
if (optik)
newFilter = newFilter.eq(‘fliesenoptik’, optik);
if (preisFilterEingabe < 31){
newFilter = newFilter.lt(‘preis’, 30);
console.log(“if-preis”);
} else (newFilter = newFilter.gt(‘preis’, 1)); //sonst alle
$w('#dataset1').setFilter(newFilter);
lastFilterTitle = title;
lastFilterContinent = optik;
lastPreis = preisFilterEingabe;
}
export function iFliesenoptik_change(event, $w) {
filter(lastFilterTitle, $w(‘#iFliesenoptik’).value, lastPreis);
}
export function auswahlGruppePreis_change(event, $w) {
filter(lastFilterTitle, lastFilterContinent, $w(‘#auswahlGruppePreis’).value);
}
Everything was working fine and I added some more content to my database “Holzoptik” , but now not from edit site menu rather from out from dashboard menu .
This new from dashboard added content is shown in my repeater but when I want to choose dropdown then only old (from in site menu added content) is shown .
I tried to synch from sand to live box and it seems that there is no difference between them .
What I am doing wrong ?
Thank you for your help !!!