Happy New Year Ninja! I have input the code. I am getting no errors, but not getting a response with the drop downs. No datasets are connected. The repeater has the first profile that’s in my dataset. When I attempt to search, no additional profiles filter through the Repeater. Here is my code:
import wixData from ‘wix-data’;
var DBFIELDS=[], DD_ID=[], OUTPUT_FIELD=[];
//-------- USER-INTERFACE -------------------------
var DBLIMIT = 1000;
var DATABASE = “Items1”
//—[ Dropdown-Settings]---------------------
DD_ID[0] = “#stateDropdown1”
DD_ID[2] = “#cityDropdown2”
//—[ DB-INPUT-Field-Settings]--------------
DBFIELDS[0] = “state”
DBFIELDS[2] = “city”
//—[ DB-OUTPUT-Field-Settings]--------------
OUTPUT_FIELD[0] = “DBFIELDS[0]”
//-------- USER-INTERFACE ---------------------------
$w.onReady(async()=>{
let ITEMS = await get_DBdata(DATABASE);
console.log("ITEMS: ", ITEMS);
create_UniqueDropdown(ITEMS,DBFIELDS[0],DD_ID[0]);
$w(‘#’+DD_ID[0]).onChange(()=>{
let INDEX = $w(‘#’+DD_ID[0]).selectedIndex
console.log(ITEMS[INDEX][OUTPUT_FIELD[0]]);
});
});
function create_UniqueDropdown(items, dbfield, dropdown) {
const uniqueTitles = getUniqueTitles(items);
let options = buildOptions(uniqueTitles);
console.log(options);
$w(‘#’+dropdown).options = options;
function getUniqueTitles(items) {
const titlesOnly = items.map(item => item[dbfield]);
return […new Set(titlesOnly)];
}
function buildOptions(uniqueList) {
return uniqueList.map(curr => {
return {label:curr, value:curr};
});
}
}
function get_DBdata(DATABASE) {
return wixData.query(DATABASE)
.limit(DBLIMIT).find()
.then(results=> {console.log(results);
let ITEMS = results.items
return (ITEMS)
});
}