2013-06-26 2 views
0

나는 두 ASPX 페이지가 .. 하나는 부모이고, 다른 하나는 아이입니다 ... 부모 ASPX 아래의 코드를 사용하여 새 창에서 아이 ASPX를 여는 링크가 있습니다전체 페이지를 새로 고치지 않고 상위 ASPX 컨트롤 값을 새로 고치는 방법은 무엇입니까?

코드

//JavaScript function: 
function showPopup() 
{ 
    var strReturn = window.open("TaxReportInputsForm.aspx",'popup','width=390,height=120'); 
} 

버튼 코드 : 나는 현재 설정 숨김 코드, 자식 폼의를 사용하고

Page.ClientScript.RegisterStartupScript(GetType(), "popup", "showPopup();", true); 

팝업 ASPX를 여는 데 사용 세션 변수를 사용하여 부모 폼의 컨트롤 값 ... 그러나 부모 폼의 컨트롤의 값이 업데이트 (디버깅을 통해 확인) 되어도 새 값이 표시되지 않습니다.

자식 폼이 값을 변경 한 후에 부모 폼의 컨트롤의 새 값을 표시 할 수 있습니까?

두 가지 요구 사항 : 내가 자식 폼이 열려있는 동안 부모 폼의 컨트롤의 값을 업데이트 할

  1. 주 ... 즉, 내가 아이 기다리지 않으 그 모든 컨트롤의 값이 다시 발생하기 때문에 형태는 ..
  2. 내가 또한 전체 부모 폼 새로 고침하지 않으 ..이 업데이트를 트리거하기 위해, 닫습니다

내 프레임 워크는 .NET 2.0입니다 ...

답변

0

문제는 부모 클라이언트 측 코드와 코드 숨김 코드 사이의 통신이 없다는 것입니다. 값이 html (클라이언트)에서 업데이트되지 않는 이유입니다. 이제 솔루션은 클라이언트 측 코드와 서버 간의 통신을합니다.

1) 타이머 설정으로 Jquery AJAX 호출. 타이머는 하위 팝업을 연 후에 만 ​​시작됩니다. 이제 서버의 값은 클라이언트 측에 올 수 있고 jquery DOM 변경으로 업데이트 될 수 있습니다.

2) ASP.NET의 PageMethod도 사용할 수 있습니다.

+0

jQuery를 사용할 수 없습니다 ... 잠시 후에 두 번째 옵션을 설명 할 수 있습니까? – Ahmad

+0

Microsoft에서 제공하는 ajaxtool 키트가 있어야합니다. 여기에서 확인하십시오. http://weblogs.asp.net/jalpeshpvadgama/archive/2011/12/24/page-methods-in-asp-net.aspx – Devesh

관련 문제