This is a tricky business and I believe I had tried this multiple times and ended using a work around. I had a javascript object in json notation and it had a lot of values encapsulated in it. To be specific it looked like the following
>> window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US")
{
HSI B MAKATI PHILIPPINES : [object Object],
HSI B HEREDIA COSTA RICA : [object Object],
FSC-HEREDIA, COSTA RICA : [object Object],
HSI QUEZON CITY PHILIPPINES : [object Object],
CSSC-VENDOR-TELETECH, NOVA, PH : [object Object],
HSI C HYDERABAD INDIA : [object Object],
HSI C NOVALICHES PHILIPPINES : [object Object],
EVRC . PASIG, PHILIPPINES : [object Object],
HSI B TIJUANA MEXICO : [object Object],
FSC-HYDERABAD,INDIA : [object Object]
}
All I wanted to do was get an array of the property names. Following attempts were futile. They either gave empty values or errors
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x[0]
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x(0)
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x["0"]
>> window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US").properties
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x[0]
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x.length
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x.size
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x.size()
"Object doesn't support property or method 'size'"
Only Specific calls like the following with the property names worked. But this is no good to me as I cant always no all the properties present inside the object
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US");x["FSC-HYDERABAD,INDIA"]
{
Name : "FSC-Hyderabad,India",
Description : "Refers to the Center corresponding to the code FSC-Hyderabad,India",
Value : "AR",
Type : "AGENT_CENTER_OUTSIDE_US"
}
At last the following attempts helped me
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US"); for(y in x){y}
"FSC-HYDERABAD,INDIA"
>> x=window.top.getGlobalParamData("AGENT_CENTER_OUTSIDE_US"); for(y in x){console.log(y)}
LOG: HSI B MAKATI PHILIPPINES
LOG: HSI B HEREDIA COSTA RICA
LOG: FSC-HEREDIA, COSTA RICA
LOG: HSI QUEZON CITY PHILIPPINES
LOG: CSSC-VENDOR-TELETECH, NOVA, PH
LOG: HSI C HYDERABAD INDIA
LOG: HSI C NOVALICHES PHILIPPINES
LOG: EVRC . PASIG, PHILIPPINES
LOG: HSI B TIJUANA MEXICO
LOG: FSC-HYDERABAD,INDIA
Now I can construct my required array J
Hope this helps some one J
No comments:
Post a Comment