- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:14 PM
Lets take an example like I hav 3 fields like country,state,city
If country is selected as india,then the other two field choices should show only India states in State field and cities in City field. I have done something in client script but still notihg is changing.
Please let me know where I went wrong
heres the code I have tried it for country and state fields;
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
var a=g_form.getValue('u_country');
if(a=='India')
{
g_form.addOption('u_statte','ap','Ap');
g_form.addOption('u_statte','karnataka','Karnataka');
g_form.removeOption('u_statte','california','California');
g_form.removeOption('u_statte','washington','Washington');
g_form.removeOption('u_statte','victoria','Victoria');
g_form.removeOption('u_statte','south aus','South Aus');
}
}
Thanks in Advance!
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:23 PM
Hi,
Technically for such things you can use dependent field but this works only when the choices are NOT static.
Your client script looks fine.
Also, since you have written onchange on country field, you can directly access newValue variable which will give the latest selection of the country field.
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
//var a=g_form.getValue('u_country');
g_form.addInfoMessage("Value is "+newValue);
if(newValue=='India')
{
g_form.addInfoMessage("Entered into if condition");
g_form.addOption('u_statte','ap','Ap');
g_form.addOption('u_statte','karnataka','Karnataka');
g_form.removeOption('u_statte','california','California');
g_form.removeOption('u_statte','washington','Washington');
g_form.removeOption('u_statte','victoria','Victoria');
g_form.removeOption('u_statte','south aus','South Aus');
}
}
Also verify if the field name u_statte is correct or not.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:32 PM
Okay, that woudl mean the comparison is failing.
Try like this once. And i assume the value of India is correct. Its in caps and not small.
if(trim(newValue)== 'India')
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:38 PM
The thing is I think i need to compare with === this right?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:37 PM
No Buddy still its not working !

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:41 PM
Can you share the screenshot of the infoMessage aftr placing the below code.
g_form.addInfoMessage("Value is "+newValue+"--"+newValue.length);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-11-2019 11:46 PM
No buddy still its showing just Value is India alert...it is not passing ino the if condition and my screenshot button is not working budyy