2011-11-16 3 views
13

jQuery Mobile App을 작성 중입니다. 아래의 문을 통해 드롭 다운 옵션을 변경했습니다 : - $ ("# DataBaseNames"). val (db);jQuery Mobile 선택한 드롭 다운 옵션을 변경하고 새로 고침

경고를 통해 확인 했으므로 올바른 db 값이 전달되는 것이 확실합니다. 드롭 다운을 아래로 드릴 다운하면 올바른 텍스트가 선택되어 있지만 드롭 다운 자체에서 올바른 텍스트가 선택되어 표시되지 않습니다.

삽입해야하는 새로 고침 전화는 무엇입니까?

편집 : 필에서 대답 아래 코드를 -Adding는

<script type="text/javascript"> 

     $("#@ViewBag.DivTitle").live('pageshow', function() { 

      var db = getCookie("DataBaseNames"); 

      $("#DataBaseNames").val(db);    
      $("#DataBaseNames option[value='"+ db + "']").attr("selected", "selected"); 

      //  refresh value , Following is what is required   
      $('select').selectmenu('refresh'); 

      $("#cmdLogOn").live("click", function() { 
       var dbSelected = $("#DataBaseNames option:selected").text();    
       setCookie('DataBaseNames', dbSelected); 
      }); 
     }); 

     function setCookie(name, value) { 
      var expires = ""; 
      document.cookie = name + "=" + value + expires + "; path=/"; 
     } 

     function getCookie(name) { 
      var nameEQ = name + "="; 
      var ca = document.cookie.split(';'); 
      for (var i = 0; i < ca.length; i++) { 
       var c = ca[i]; 
       while (c.charAt(0) == ' ') c = c.substring(1, c.length); 
       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 
      } 
      return null; 
     } 
    </script> 
+0

코드를 살펴 보는 것이 좋습니다. 질문을 편집하고 예제 코드를 추가하십시오. 어쩌면 http://jsfiddle.net –

답변

35

새로 고침 사용자 지정이 사용자 정의가 반영하기 위해 업데이트를 선택하는 데 사용됩니다

선택 업데이트 그것을 해결 기본 선택 요소의 선택 항목의 옵션 수가 사용자 지정 메뉴의 항목 수와 다른 경우 사용자 지정 메뉴가 다시 작성됩니다. 또한 참인 인수를 전달하면 강제로 재구성을 수행 할 수 있습니다.

//refresh value   
$('select').selectmenu('refresh'); 

//refresh and force rebuild 
$('select').selectmenu('refresh', true); 

문서 : 나는 this link를 확인하고 나를 위해 일하는 그것을 발견

+0

이것을 지적 해 주셔서 감사합니다! – vaske

+0

내 하루를 저장했습니다 !!!! – sony

2

. 시도해보십시오.

var myselect = $("select#YourDropdownID"); 
myselect[0].selectedIndex =0; 
myselect.selectmenu("refresh"); 
0

다른 드롭 다운을 다른 것으로 변경하려면 다음을 사용하십시오.

<link href="code.jquery.com/mobile/1.4.1/jquery.mobile-1.4.1.min.css" rel="stylesheet"/> 
<link href="jquery/css/index.css" rel="stylesheet"/> 
<link href="../favicon.ico" rel="shortcut icon"/> 
<link href="http://fonts.googleapis.com/css?family=Open+Sans:300,400,700" rel="stylesheet"/> 
<link href="http://code.jquery.com/mobile/1.4.1/jquery.mobile-1.4.1.min.css" rel="stylesheet" /> 
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
<script src="http://code.jquery.com/mobile/1.4.1/jquery.mobile-1.4.1.min.js"></script> 

<script type="text/javascript"> 

    function ItemNo() 
    { 
    var no = $('#sltItemNo')[0].selectedIndex; 

    var myselect = $("select#sltItemName"); 
    myselect[0].selectedIndex =no; 
    myselect.selectmenu("refresh"); 
    } 
    function ItemName() 
    { 
    var no = $('#sltItemName')[0].selectedIndex; 

    var myselect = $("select#sltItemNo"); 
    myselect[0].selectedIndex =no; 
    myselect.selectmenu("refresh"); 
    } 

</script> 

<select id="sltItemNo" onchange="ItemNo()" data-shadow="false" data-mini="true"> 
    <option value="Abc">1</option> 
    <option value="Cde">2</option> 
    <option value="Efg">3</option> 
</select> 

<select id="sltItemName" onchange="ItemName()" data-shadow="false" data-mini="true"> 
    <option value="1">Abc</option> 
    <option value="2">Cde</option> 
    <option value="3">Efg</option> 
</select> 
관련 문제