2012-09-25 2 views
1

나는 목록보기를 가지고 있습니다. 모두 멋지게 표시되었습니다. 원래 아이템을 넣기 위해 사용했던 함수와 똑같은 함수를 사용하여 항목을 추가합니다. 목록보기를 새로 고치지 않으면 새 항목이 향상되지 않습니다 (놀랄 일이 아닙니다). 그러나 새로 고침을 호출하면 개선이 불완전합니다. 여기 jQuery 모바일 목록보기 ('새로 고침')가 향상을 완료하지 않습니다.

<li data-role="fieldcontain" id="flip-li-38"> 
    <div class="containing-element"> 
    <label for="flip-38">A B:</label> 
    <select name="flip-38" id="flip-38" data-role="slider" data-mini="true"> 
     <option value="off">Absent</option> 
     <option value="on">Present</option> 
    </select> 
    </div> 
</li> 

이 향상 후 항목은 다음과 같습니다 : 여기

가 입력 한 항목의

<li data-role="fieldcontain" id="flip-li-38" class="ui-li ui-li-static ui-body-c"> 
    <div class="containing-element"> 
    <label for="flip-38">A B:</label> 
    <select name="flip-38" id="flip-38" data-role="slider" data-mini="true"> 
     <option value="off">Absent</option> 
     <option value="on">Present</option> 
    </select> 
    </div> 
</li> 

을하지만, 여기에 원래 목록에있는 항목 중 하나입니다 :

<li data-role="fieldcontain" id="flip-li-37" class="ui-li ui-li-static ui-body-c ui-field-contain ui-body ui-br"> 
<div class="containing-element"> 
    <label for="flip-37" id="flip-37-label" class="ui-slider">X Y:</label> 
    <select name="flip-37" id="flip-37" data-role="slider" data-mini="true" class="ui-slider-switch"> 
    <option value="off">Absent</option> 
    <option value="on">Present</option> 
    </select> 
    <div role="application" class="ui-slider ui-slider-switch ui-btn-down-c ui-btn-corner-all ui-slider-mini" style> 
    <span class="ui-slider-label ui-slider-label-a ui-btn-active ui-btn-corner-all" role="img" style="width: 0%; ">Present</span> 
    <span class="ui-slider-label ui-slider-label-b ui-btn-down-c ui-btn-corner-all" role="img" style="width: 100%; ">Absent</span> 
    <div class="ui-slider-inneroffset"> 
     <a href="#" class="ui-slider-handle ui-btn ui-btn-up-c ui-shadow ui-btn-corner-all ui-slider-handle-snapping" data-corners="true" data-shadow="true" data-iconshadow="true" data-wrapperels="span" data-theme="c" role="slider" aria-valuemin="0" aria-valuemax="1" aria-valuenow="off" aria-valuetext="Absent" title="Absent" aria-labelledby="flip-37-label" style="left: 0%; "> 
     <span class="ui-btn-inner ui-btn-corner-all">…</span> 
     </a> 
    </div> 
    </div> 
</div> 
</li> 

을 여기 있어요 주변 환경 :

<div id="memberPage" data-role="page"> 
     <div data-role="content"> 
     <form> 
       <ul data-role="listview" data-filter="true" id="memberList"></ul> 
      </form> 
     </div><!-- /content --> 
    </div> 

타이밍 문제 일 수 있습니다. 부분적으로 향상된 항목을 콘솔에 기록하여 캡처했지만 새로 고침을하기 전에 작성했습니다 (새로 고침을 위해 전화를 끊으면 원래 확장되지 않은 항목이 기록됩니다).

중요한 경우 항목은 대화 상자에서 목록의 페이지로 다시 연결되는 단추의 onclick 속성을 통해 추가됩니다 (따라서 대화 상자가 닫힙니다).

미리 감사드립니다.

답변

0

refresh 목록보기 대신 $('#memberList').trigger('create');으로 시도하십시오. 나는 당신이 새로운 목록 항목뿐만 아니라 그 안의 슬라이더를 향상시켜야하는 것처럼 작동 할 것이라고 생각한다.

+0

그 ALMOST가 트릭을 만들었습니다. 나는 트리거/생성 (슬라이더가 올바르게 향상됨)과 listview/refresh (목록 항목의 향상을 마쳤습니다)를 모두 할 필요가있었습니다. –

관련 문제