I don't want to show saved data in my dropdown because user select this as twice which is not right

14 Views Asked by At

i have multi select dropdown, it shows saved data in input filed which is good but when i go for dropdown then allow the user to select the same option which is already saved in the database or present in input filed. I want only remove already chosen data from the dropdown.

 <select class="form-control select2"  id="choices-multiple-languages" placeholder="Select upto 4 Languages" name="languages[]" multiple="multiple" style="width: 100%">
                <option value="English">English</option>
                <option value="Chinese">Chinese</option>
                <option value="Spanish">Spanish</option>
                <option value="Hindi">Hindi</option>
                <option value="Arabic">Arabic</option>
                <option value="Bengali">Bengali</option>
                <option value="Portuguese">Portuguese</option>
                <option value="Russian">Russian</option>
                <option value="Japanese">Japanese</option>
                <option value="Indonesian">Indonesian</option>
                <option value="Sinhala">Sinhala</option>
                <option value="Tamil">Tamil</option>
                <option value="Mandarin">Mandarin</option>
                <option value="Thai">Thai</option>
            </select>



$.ajax({
                    type: "GET",
                    data: {},
                    // url: localStorage.getItem('mhn_hosp_app_server_root') + '/v1/doctor-api/j/get-languages',
                    url: '/doctors/api/v1/doctor-api/j/get-languages',
                    headers: {
                        "Authorization": "Bearer " + localStorage.getItem('d_u_a_b_t')
                    },
                    cache: false,
                    success: function (html) {
                        //for languages placeholder
                        if (html.languages == null) {

                            $("#choices-multiple-languages").select2({
                                placeholder: "Select Your Languages",

                            });
                        } else {
                            $("#choices-multiple-languages").select2({
                                placeholder: "Select Your Languages",
                            });
                        }

                        if (html.languages == null) {
                            $("#choices-multiple-languages").select2({
                                placeholder: "Select Your Languages",
                                allowClear: true
                            });
                        } else {
                            $.each(html.languages, function (i, language) {
                                $('#choices-multiple-languages').prepend("<option value='" + language.language + "' selected='selected' disabled='disabled'>" + language.language + "</option>");
                             
                            });
                            
                          
                              
                            $('#choices-multiple-languages').select2({
                                placeholder: 'This is my placeholder',
                                allowClear: false,
                                dropdownCssClass: ''
                              });
                           
                        }


                       
                    },
                    error: function (xhr, status, error) {
                        console.log("Error: " + error);
                        // handle error case here
                    }
                });

I want only remove already chosen data from the dropdown.

0

There are 0 best solutions below