Jogireddy
Jogireddy

Reputation: 21

nested loop for checkbox values which compared with input form & saved form values which in json format. And how to avoid duplicates in checkbox goup

nested loop for checkbox values which compared with input form & saved form values which in json format. And how to avoid duplicates in checkbox group

var form_fields = {{ i.form_field|safe }};
var save_for_details = {{ i.saved_form_details|safe }};
if(form_fields[i].type=='checkbox-group' || form_fields[i].type=='radio-group' ){

                                    for(j=0;j<form_fields[i].values.length;j++){
                                        for(k=0;k<save_for_details.length;k++){
                                                if(form_fields[i].name+"[]" == save_for_details[k].name){ 
                                                    if(save_for_details[k].value== j){
                                                        var checked =  "checked";
                                                    }else{
                                                        var checked =  "";                                          
                                                    }
                                                html += '<input class="" style="width: 25px !important;" type="'+fields+'"  id="'+form_fields[i].values[j].value+'"  '+checked+' name="'+form_fields[i].name+'[]" value="'+j+'"><label>'+form_fields[i].values[j].value+'</label>'; 
                                                }
                                            }                                   

                                    }

var save_for_details = [{"name":"number-roll","value":"657567"},{"name":"inquiry-year","value":"2018-2019"},{"name":"inquiryfor[]","value":"0"},{"name":"studentname","value":"gff"},{"name":"middlename","value":"df"},{"name":"lastname","value":"ghghy"},{"name":"gender","value":"Female"},{"name":"dob","value":"2019-09-25"},{"name":"classname","value":"Nursery"},{"name":"parentsname","value":"3434"},{"name":"chlidrelation","value":"Father"},{"name":"address","value":"gfgf"},{"name":"street","value":"gfgf"},{"name":"city","value":"hgh"},{"name":"state","value":"hj"},{"name":"pincode","value":"78787"},{"name":"country","value":"kjk"},{"name":"phone","value":"5458490854"},{"name":"email","value":"[email protected]"},{"name":"approach[]","value":"2"},{"name":"approach[]","value":"6"},{"name":"approach[]","value":"8"},];

checked & uchecked need to display only once

Upvotes: 2

Views: 104

Answers (1)

Jogireddy
Jogireddy

Reputation: 21

Moved the input type out of the inner loop and then add the checked to the html element like as shown below

html += '<input class="" style="width: 25px !important;" type="'+fields+'"  id="'+form_fields[i].values[j].value+'"  ';
                                        for(k=0;k<save_for_details.length;k++){
                                                if(form_fields[i].name+"[]" == save_for_details[k].name){ 
                                                    if(save_for_details[k].value== j){
                                                        var checked =  "checked";
                                                        html += checked;                    
                                                    }
                                                }
                                            }
                                    html += ' name="'+form_fields[i].name+'[]" value="'+j+'"><label>'+form_fields[i].values[j].value+'</label>';

Upvotes: 0

Related Questions