Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery val() not working in IE for dynamically added option

I am generating options for my dropdown by jQuery ajax method, filling it by db.

$.ajax({
        type: "POST",
        url: pageUrl + '/FillAssignee',
        data: {},
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (response) {
                        for (var i = 0; i < response.d.length; i++) {
                            $('#SelectAssignee').append($("<option></option>").val(response.d[i]['Value']).html(response.d[i]['Text']));
                        }
                        if (response.d.length > 0) 
                        {
                          $('#SelectAssignee>option:eq(1)').attr('selected', true); 
                          alert($('#SelectAssignee').val()); //this line giving me correct value but value not showing in dropdown as selected in ie
                        }
                  }            
      });

It's works fine. only problem is that first value not got selected by default on IE. So for that I used many options

1. $('#SelectAssignee').val();
2. $('#SelectAssignee option:first').attr('selected','selected');
3. $('#SelectAssignee option:first').prop('selected',true);

How can I get it work?

like image 648
rahul Avatar asked Nov 13 '22 18:11

rahul


1 Answers

try something like this

 var selObj = document.getElementById('SelectAssignee');
 selObj.selectedIndex = 0;
like image 69
rajesh kakawat Avatar answered Nov 15 '22 10:11

rajesh kakawat