2010-12-02 4 views
1

대화 상자에 partialview가 있습니다. 대화 상자를 취소하고 저장하지 않기로 결정한 경우 사용자가 대화 상자에서 변경 한 내용을 취소 할 수 있습니까?대화 내용을 새로 고치는 방법

사용자가 이제 동일한 대화 상자를 열면 사용자가 대화 상자를 취소하더라도 변경 사항이 그대로 유지됩니다. 컨트롤러를 호출하고 부분 뷰를 대체 할 수 있음을 알고 있습니다.

다른 방법이 있습니까?

답변

1

sanke - partialview가 처음로드 될 때 당신은 .DATA() 요소 사업부의 내용을 저장할 수 있습니다. 그런 다음 저장하지 않고 취소 한 경우 .data()를 대화 상자 용으로 만든 div로 다시 푸십시오.

행동은 말보다 더 크게 말한다 :

// the partial getting loaded 
$("#targetDiv").html(data); 
var foo = document.body; 
jQuery.data(foo, "myKey", data); 

을 다음 당신이 반대 할 수 취소에 :

// inside the dialog cancel event 
var foo = document.body; 
var data = jQuery.data(foo, "myKey"); 
$("#targetDiv").html(data); 

그것을 시도 줄을 ...

+0

감사합니다. – Karl

+0

도움을 주셔서 감사합니다.) –

0

나도 몰라 많은 aspnet mvc하지만 클라이언트 측과 스크립팅에 관해서는 대화 상자에서 클라이언트 쪽을 작업하는 한 대화 상자가 페이지의 DOM 부분이므로 이미 삽입 된 내용은 그대로 남아 있습니다. 이런 종류의 문제를 해결하기 위해 보통 Dialoq 내 다른 필드에 셀렉터가 들어있는 '대화 상자'클래스를 만들고 opendialog 메서드가 호출되거나 대화 상자가 취소 될 때 기본값으로 초기화됩니다. 그 점에서 플러스 값은 모든 클라이언트 사이드 스크립팅 대화 상자가 하나의 깔끔한 자바 스크립트 클래스에 포함되어 있다는 것입니다.

관련 문제