2011-10-03 208 views
0

我的jquerymobile表单有一个optgrouped多节下拉菜单。在表单加载时,我必须设置一些默认选项。我已经尝试过,如jquerymobile:mutli选择下拉列表

$('#myselect')[0].selectedIndex = 2; 
$('#myselect')[0].selectedIndex = 3; 
$('#myselect')[0].selectedIndex = 5; 
$('#myselect').selectmenu("refresh"); 

但是只有第5个选项被选中,如何为使用js的多个选项设置选定的选项为true。

+++ ++++ EDIT

<!DOCTYPE html> 
<link rel="stylesheet" href="jquery.mobile-1.0b3/jquery.mobile-1.0b3.min.css" />   
    <script src="jquery.mobile-1.0b3/jquery-1.6.2.min.js"></script> 
    <script type="text/javascript"> 
     $("#account").live("pagecreate", function(event){ 
      if(navigator.userAgent.match(/android/i)) { 
       loadOrgDropdown(); 
      }   
     }); 

</script> 

<script src="jquery.mobile-1.0b3/jquery.mobile-1.0b3.min.js"></script> 
<script src="js/common.js"></script> 
<script type="text/javascript"> 


     function loadDropdown() { 
      jQuery.ajax(
        { 
      url   : 'PocketmediServices.php?service=getDropdownValues', 
      type  : 'get', 
      dataType : 'json', 
      beforeSend : function(){ 
      }, 
      error  : function(){ 
         if (typeof Android != 'undefined') { 
          Android.dismissLoadinDialog(); 
         } 
      }, 
      success  : function(data){ 
       if(data.response.getDropdownValues.dropdownList !== undefined) { 
       var count = -1; 
       var selected = -1; 
       $.each(data.response.getDropdownValues.dropdownList, function(key, val) { 
        count++; 
        $('#myselect') 
        .append($('<option>', { value : val.item.Code }) 
        .text(val.item.Name)); 
        if($.inArray(val.item.optionval, previousSelected) >=0) { 
         $('#myselect')[0].selectedIndex = [3,5]; // hard coded for now. 
        } 
       }); 
       $('#myselect').selectmenu("refresh"); 
       }  
      }, 
      complete : function(req){ 
      }, 
      }); 

     } //loadDropdown 

    </script> 

    <div data-role="fieldcontain"> 
     <label for="organization">Organization:</label> 
     <select name="organization" id="organization" data-native-menu="false" multiple > 
      <optgroup label="s" id="org_s"></optgroup> 
      <optgroup label="Support Networks" id="org_support_networks"></optgroup> 
     </select> 
    </div> 

谢谢, nehatha

回答

0

多重选择框与数组例如多个值涉及

$('#myselect').val([2,3,5]); 

你可以找到例子@http://api.jquery.com/val/

+0

嗨@Jayendra帕蒂尔,我,得到了ERR'$( “#myselect”)[0] .VAL不是function'。我试过'$('#myselect')[0] .selectedIndex = [2,3,5];'也是,但是不能工作。 –

+0

你可以发布你的代码在jsfiddle,这将帮助我们调试 – Jayendra

+0

嗨Jayendra patil,我不是关于jsfiddle,我用我的代码更新了我原来的问题。请检查一次。谢谢。 –