HPE Morpheus Enterprise Software
1856408 Members
2046 Online
104112 Solutions
New Discussion

Query array in optionlist logic for networks

 
SOLVED
Go to solution
Not applicable

Query array in optionlist logic for networks

Hi,

I’m trying to refine our optionlist logic for selecting networks:

Currently I have:

for(var x=0;x < data.networks.length; x++) {
if (data.networks.dhcpServer == true && data.networks.visibility == “public” && data.networks.labels.length > 0) {
results.push({name: data.networks.name, value: data.networks.id});
}
}

Which works, however I would like to refine.

Basically I want to match the contents of data.networks.labels so if a label is set as “provisioning” it’s selected.

I have tried data.networks.labels == “provisioning” but it does not pick up. I have tried data.networks.labels.includes (‘provisioning’) but the query errors as it does not like includes,

When I query the API, I say it’s: -provisioning.

Any ideas on the correct syntax to use?

4 REPLIES 4
Not applicable

Re: Query array in optionlist logic for networks

Thanks that is now working.

Not applicable

Re: Query array in optionlist logic for networks

I’m trying to refine the logic so if it finds “provisioning” in first or second element of the array. But cannot get the logic to work.

for(var x=0;x < data.networks.length; x++) {
if (data.networks.dhcpServer == false && data.networks.visibility == “public” && data.networks.labels.length > 0) {
if (data.networks.labels[0].includes(‘provisioning’) || data.networks.labels[1].includes(‘provisioning’)) {
results.push({name: data.networks.name, value: data.networks.id});
}
}}

What am I missing?

Cheers
Jon

Not applicable

Re: Query array in optionlist logic for networks

Found the fix:

for(var x=0;x < data.networks.length; x++) {
if (data.networks.dhcpServer == false && data.networks.visibility == “public” && data.networks.labels.length > 0) {
if (data.networks.labels[0].includes(‘provisioning’)){
results.push({name: data.networks.name, value: data.networks.id});
}
}
if (data.networks.dhcpServer == false && data.networks.visibility == “public” && data.networks.labels.length > 1) {
if (data.networks.labels[1].includes(‘provisioning’)){
results.push({name: data.networks.name, value: data.networks.id});
}
}}

Not applicable
Solution

Re: Query array in optionlist logic for networks

Hi Chopper,
Certainly, please attempt to access the first element of the array using data.networks.labels[0]. This should provide the desired data from the array.

Thanks
Velan