2011-07-06 5 views
0

내 프로젝트에서 모달 대화 상자를 만들었으며 모달 대화 상자에서 partialview/view를로드 할 수 있습니다. 문제는보기에 3 개의 탭이 있으며 그 중 하나는 다른 partialview를 참조합니다. 탭을 클릭하면 부모 페이지 (모달 대화 상자에 대한 링크가있는 페이지)에 관련된 부분 뷰가 표시됩니다. 모달 대화 상자에서 탭을 이동하는 대신 누구든지 이전에이 문제가 발생 했습니까?탭이있는 mvc3 모달 대화 상자

내가 살펴볼 수있는 도움말이나 유사한 예를 들어 주시면 감사하겠습니다. "= 유형 '

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<NeboAlertManagement.Models.model>" %> 
: 첫 번째는 조치 1이다

이 내 코드 jQuery를 (문서) .ready (함수() {

 $('.trigger').live('click', function (event) 
     { 
       var id = $(this).attr('rel');  
       var dialogBox = $("<div>"); 
         $(dialogBox).dialog({ 
           autoOpen: false, 
           resizable: true, 
           title: 'Test Modal Dialog', 
           modal: true, 
           show: "blind", 
           hide: "blind", 
           open: function (event, ui) { 

             $(this).load('<%=Url.Action("action1","controllerName")%>'); 
                      } 



            }); 
             $(dialogBox).dialog('open'); 
            }); 

된 후, I는 4 일부 전망을 텍스트/자바 스크립트 "> "TYPE = "텍스트/자바 스크립트"> "TYPE ="텍스트/자바 스크립트 "> "TYPE = "텍스트/자바 스크립트">

 <div id="tabContainer"> 
     <ul id="menu"> 


      <li><%= Html.ActionLink("Home", "action2", "controllername")%></li> 
      <li><%= Html.ActionLink("Products", "action3", "controllername")%></li> 
      <li><%= Html.ActionLink("Contact Us", "action4", "controllername")%></li> 


     <%-- <li><%= Html.RenderPartial("action2")%></li> 
      <li><%= Html.RenderPartial("action3")%></li> 
      <li><%= Html.RenderPartial("action4")%></li>--%> 


     </ul> 
     </div> 
     <% } %> 

다른 부분보기는 간단한 테스트보기이지만 도움이된다면 게시 할 수 있습니다.

감사합니다.

+0

공유 할 코드가 있습니까? –

+0

자바 스크립트 오류를 ​​알 수 있습니까? –

+0

미안하지만 나는 이해하지 못한다! 더 자세한 설명을 할 수 있습니까? – Sue

답변

0

jquery 라이브가 탭을 캡처 할 수 있도록 탭에 '트리거'클래스를 제공해야합니다.

Html.ActionLink("Text", "Action", new { controller = "Home" }, new { @class = "trigger" }) 

및 클릭 핸들러의 상단에

팝업으로

$('.trigger').live('click', function (event) 
{ 
    event.preventDefault() 
    var uriToLoad = $(this).attr('href'); 

적재 값 전에 사용 - 같은 팝업을 사용하십시오. 이제는 매번 새로운 팝업을 생성하기 때문입니다. 따라서 :

// popup already present 
if($('#mypopupid').length > 0 && $('#mypopupid').dialog("isOpen")) { 
    $('#mypopupid').load(uriToLoad); 
} else { // rest of the code - give popup id 
    var dialogBox = $('<div id="mypopupid" />') 
} 

팝업이 이미 존재하는 경우, 그것을 새로 사용하지 않을 경우 사용하십시오.

+0

답장을 보내 주시면 감사하겠습니다. 탭을 클릭하면 모달 대화 상자가 닫히고 메인 페이지에서 부분보기가 열립니다. 어쨌든 감사합니다. – Sue

+0

편집 된 버전을 사용해보십시오. – llapinski

+0

나는 추가를 시도했는데 부분적으로 대화 상자를 닫지 않고 메인 페이지로 이동하는 것을 부분적으로 도왔지만, 탭을 클릭하면 동일한 모달 대화 상자의 다른 대화 상자가 열립니다 (클릭 한 부분보기를 여는 대신). 탭), 그래서 내 페이지에 몇 가지 모달 대화 상자를 가지고, 어떤 일이 일어나고 있는지, 그리고 당신의 도움에 감사드립니다! – Sue