[{"id":20,"parent_id":0,"title":"TestDropdownUpdate","alias":"testdropdownupdate","created":"2025-12-19 11:20:06","published":1,"category":"","elements":{"1":{"id":"1","type":"page","minimized":"","title":"Page1","alias":"page1","pagegroup":"","icon":""},"6":{"id":"6","parent":"1","section":"load","name":"php","type":"actions","settings":{"disabled":"","name":""},"code":"$this->data['option_set_1'] = [\r\n    [\"id\" => \"\",\"name\" => \"Select option...\"],\r\n    [\"id\" => \"1\",\"name\" => \"Option 1\"],\r\n    [\"id\" => \"2\",\"name\" => \"Option 2\"],\r\n    [\"id\" => \"11\",\"name\" => \"Option 11\"],\r\n    [\"id\" => \"12\",\"name\" => \"Option 12 in both sets\"],\r\n    [\"id\" => \"13\",\"name\" => \"Option 13\"]    \r\n];\r\n$this->data['option_set_2'] = [\r\n    [\"id\" => \"\",\"name\" => \"Select option...\"],\r\n    [\"id\" => \"7\",\"name\" => \"Option 7\"],    \r\n    [\"id\" => \"12\",\"name\" => \"Option 12 in both sets\"],\r\n    [\"id\" => \"15\",\"name\" => \"Option 15\"],\r\n    [\"id\" => \"16\",\"name\" => \"Option 16\"]    \r\n];"},"7":{"id":"7","parent":"1","section":"load","name":"javascript","type":"views","code":"optionSet1 = {data:option_set_1};\r\noptionSet2 = {data:option_set_2};\r\n\r\n\r\n\/*********************************************************************************************\r\nfunction OptionSetChangeFn(arg1)\r\n\r\nCalled when the option set radio set changes\r\nupdate the test dropdown with thechosen set of options\r\n\r\n**********************************************************************************************\/\r\nfunction OptionSetChangeFn(arg1)\r\n{\r\n\r\n    if(event.target.getAttribute(\"id\") == 'select_option_set-0')\r\n    {\r\n        console.log(\"selected option set 1\");\r\n        selectedOptions = optionSet1;\r\n    }\r\n    else\r\n    {\r\n        console.log(\"selected option set 2\");\r\n        selectedOptions = optionSet2;\r\n    }\r\n\t\r\n\toptionSet = new Array();\r\n\tfor (let i = 0 ; i<selectedOptions.length; i++)\r\n\t{\r\n\t    optionSet[selectedOptions[i].id] = selectedOptions[i].name;\r\n\t}\r\n\t\r\n    Nui.Dropdown.getInstance(arg1).updateOptions(optionSet);\r\n\r\n}\r\n\r\n"},"2":{"id":"2","parent":"1","section":"load","name":"field_radios","type":"views","label":"Select Option Set","fieldname":"select_option_set","options":"1=Option Set 1\r\n2=Option Set 2","behaviors":["events_triggers","selected_values"],"triggers":{"1":{"condition":"change","name":["OptionSetChange"]}},"selected_values":["1"]},"8":{"id":"8","parent":"1","section":"load","name":"html","type":"views","code":"Want to see the greyed out \"select option\" text at the top of the list of options.\r\nNote option 4 is available in both sets of options so election should remain"},"3":{"id":"3","parent":"1","section":"load","name":"field_select","type":"views","label":"Choose Option","fieldname":"choose_option","options":"","behaviors":["dynamic_options","events_listeners"],"dynamic_options":{"datasource":"{data:option_set_1}","value":"{row:id}","text":"{row:name}"},"listeners2":{"1":{"trigger":["OptionSetChange"],"action":"call_fn","params":["OptionSetChangeFn"]}}}},"params":{"log_data":"1","info":"","debug":"1","next_page":"1","navbar":"0","method":"post","ajax":"","action":"","class":"","css_vars":{"pad":"","space":"","rad":"","bw":""},"acl":"","acl_error":"You can not access this form.","session_token_check":"1","session_token_error":"Your session has timed out or your tried to access a wrong page."}}]