2011-10-20 2 views
2

내 모바일 웹 사이트에서 동적으로 양식을 자바 스크립트로 작성하므로 jQuery Mobile 스타일을 얻으려면 페이지를 '다시로드'해야합니다. listview의 경우 $ ("# mylistview")를 호출 할 수 있습니다. listview ("refresh")하지만 양식에 해당 기능이 없습니다.jQuery Mobile이있는 새로 고침 양식 페이지

"새로 고침"을 양식의 각 요소마다 하나씩 호출 할 수 있다는 것을 알고 있지만 이렇게하면 스타일이 올바르게 적용되지 않습니다. 실제로 모든 체크 박스는 분리되어 하나의 "삽 입함"에 표시되지 않습니다.

나는 어떤 해결책을 제공합니까? 릴리스 노트에서

+0

LOAD 메서드를 사용하여 모바일 스타일로 변형 된 다른 "페이지"에 삽입 한 다음 "현재"페이지까지로드 할 수 있습니다. 이것은 이론이 작동하지 않는다면 잘 모릅니다 :( –

답변

4

문서 :

예 :

$('#nameOfPage').trigger('create'); 

이 인용구 :

새로운 심지어 "생성" t : 페이지 플러그인이 더 이상 구체적으로 각 플러그인을 호출하는 동안 한번의

에서 모든 위젯을 강화하지, 그것은 대부분의 위젯이 하는 데 사용하는 "pagecreate"이벤트, 파견 않는 자신을 자동 초기화. 위젯 플러그인 스크립트가 인 경우, 이전과 마찬가지로 페이지에서 찾은 위젯 인스턴스를 자동으로 향상시킵니다. 예를 들어, 선택 메뉴 플러그인이로드 된 경우 새로 작성한 페이지에서 찾은 선택 항목이 향상됩니다.

이제이 구조를 통해 이 될 수있는 새로운 create 이벤트를 추가 할 수 있으므로 해당 요소에 포함 된 각 플러그인을 수동으로 초기화하는 작업을 줄일 수 있습니다. 지금까지 개발자이 Ajax를 통해 콘텐츠에로드되거나 동적으로 생성 된 마크 업인 경우 은 마크 업에서 위젯을 향상시키기 위해 포함 된 모든 플러그인 (목록보기 버튼, 선택 등)을 수동으로 초기화해야했습니다.

편리한 만들기 이벤트는 페이지 생성 향상 방법 프로세스가 작동하는 것과 마찬가지로 해당 마크 업 내에서 필요한 모든 플러그인을 초기화합니다 ( ). Ajax를 사용하여 HTML 마크 업 (로그인 양식) 블록을로드하는 경우, 포함 된 모든 위젯 ( 의 경우 입력 및 단추)을 향상된 버전으로 자동으로 변환하기 위해 생성을 트리거 할 수 있습니다. 이 시나리오에 대한 코드는 다음과 같습니다

$(...new markup that contains widgets...).appendTo(".ui-page" 
).trigger("create"); 

새로 고침 대 만들기 : 이벤트 를 작성하고 새로 고침 방법 사이에는 중요한 차이가 있음을

참고 중요한 차이점이 몇 가지 위젯이 있습니다. create 이벤트는 하나 이상의 위젯을 포함하는 원시 마크 업 향상을 위해 에 적합합니다.프로그래밍 방식으로 조작 된 (이미 향상된) 위젯에서는 일부 위젯이 사용되어야하고 일치하도록 UI를 업데이트해야하는 새로 고침 방법 인 을 사용해야합니다. 당신은 당신이 동적 데이터 역할 = 페이지 생성 후 목록보기 속성, 그 목록의 부모 요소에서 작성 트리거 으로 새 정렬되지 않은 목록을 추가 페이지가 있다면

예를 들어, 것이라고는 스타일리스트 뷰로 변환 위젯. 더 많은 목록 항목이 프로그래밍 방식으로 추가 된 이면 listview의 새로 고침 메서드를 호출하면 은 새 목록 항목 만 향상된 상태로 업데이트하고 기존 목록 항목은 그대로 유지합니다.

관련 문제