2010-12-08 2 views
0

여러 섹션이있는 페이지에서 작업하고 있으며 각 섹션은 거의 동일하게 보입니다. 즉, 서버에 HTML을 작성하여 초기 페이지로드시 각 섹션에 렌더링하려고합니다. 후속 조치에서, 나는 ajax 호출을하고 서버가 json 데이터를 리턴하도록 할 것이다.서버에서 HTML 또는 데이터를 반환 - ASP.NET Webform

다른 옵션은 aspx 페이지에서 HTML을 '하드 코드'하고 JS가 각 섹션에 필요한 사용자 정의를 수행하도록하는 것입니다. 세 번째 옵션은 UpdatePanel을 사용하고 서버 측에서 모든 작업을 수행하는 것입니다.

어떤 접근 방식을 선택해야합니까? 섹션 중 하나, 이러한 사용자의 이름으로 HTML을 가지고 있으며, 사용자가 부양 가족을 추가 할 수있는 테이블 :이 같은 페이지 (큰 페이지가에 하위 섹션을 가진 것으로 생각할)

편집을 위해 사용하는 것이 무엇 방법. 또 다른 섹션은 '계약자'를 제외하고는 거의 동일하므로 이전 작업 기록과 같은 추가 HTML이 있지만 이름 (읽기 전용)과 종속 항목을 추가하는 표가 첫 번째 항목과 같습니다. 다른 섹션은 거의 같은 HTML을가집니다. 사용자는 종속물을 삭제할 수 있습니다. 그런 경우 종속성을 반영하도록 데이터베이스를 업데이트하고 섹션을 업데이트해야합니다. 서버와 데이터베이스와 상호 작용하는 아약스 호출로 후속 작업을 수행하고 싶습니다.

+1

당신이 뭘 하려는지 귀하의 설명이 매우 모호합니다. 섹션이 무엇인지에 대한 하나 또는 두 가지 구체적인 예를 제공 할 수 있습니까? '거의 동일'하다는 것을 의미하고 어떤 종류의 수정을 할 것입니까? 마이크가 사용자 정의 컨트롤을 제안하는 것이 옳은 것 같지만 사용자의 설명에서 알기는 어렵습니다. – Ender

+0

@Ender - 편집 – DotnetDude

답변

0

이 상황에서 나는 아약스 호출을 사용하여 작업을 수행하는 컨트롤을 만들 것입니다. 그런 다음 이들 간의 사소한 차이를 결정할 수있는 몇 가지 속성을 설정할 수 있습니다. 나는 또한 이것에 대한 다른 의견/답변을 기다리고 있습니다.

나는 JavaScript와 ajax 호출을 이미 이해하고 있다면 많은 문제를 야기 할 수밖에 없다. 또한 업데이트 패널에 포함 된 모든 오버 헤드없이 훨씬 뛰어난 성능을 제공합니다.

+0

"Ajax 호출을 사용하는 컨트롤 만들기"를 참조하십시오. ->이 컨트롤을 사용자 지정 컨트롤이라고 생각하십니까? 또는 ASP.NET 컨트롤 중 하나. Telerik ajax 컨트롤에 액세스 할 수도 있습니다. "나는 모든 비용으로 업데이트 패널을 피할 것"-> 업데이트 패널의 문제점을 설명 할 수 있습니까? 개발이 쉬워지고 일반적으로 문제가 발생하지 않습니다. – DotnetDude

+0

Telerik 컨트롤을 사용해 본 적이 없으므로 도와 드릴 수 없습니다. '거의 동일한'섹션에 따라 .ascx를 만드는 것이 더 쉬울 수도 있습니다. 또한 합성 컨트롤을 만들 수도 있습니다. http://msdn.microsoft.com/en-us/library/3257x3ea.aspx 당신과 당신이 필요로하는 것. – Mike

0

업데이트에 따르면 의도 한 용도에 따라 모양을 조정할 수있는 약간의 조건부 논리가 포함 된 사용자 지정 컨트롤이 필요합니다. 거기에서 종속 항목 추가/삭제와 같은 이벤트가 발생하면 서버와 통신하기 위해 일부 ajax 호출을 사용하십시오. 그래서 기본적으로 마이크가 말한 것입니다 ...

+0

사용자 지정 컨트롤을 만드는 오버 헤드를 추가하는 이유는 무엇입니까? 클라이언트 측에서 조건부 논리를 수행 할 수 있습니까?그 방법은 훨씬 가볍습니다 – DotnetDude

+0

동일한 (또는 비슷한) 일을 여러 번 수행하는 경우 사용자 정의 컨트롤을 만드는 것이 더 깨끗한 접근 방식이기 때문에. 나중에 각 섹션에 다른 필드를 추가하기로 결정했다면, 각 섹션에 필드를 추가하고 와이어를 연결하는 데 필요한 논리를 사용하거나 사용자 정의에 한 번 추가하고 싶습니까? 제어? – Ender

0

하나의 옵션은 이름과 종속 변수에 대한 그리드와 같은 "반복 된"입력 필드에 대한 사용자 컨트롤을 만드는 것입니다.

또 다른 옵션은 jQuery를 템플릿을 사용하는 것입니다 : 나는이에 대한 UpdatePanel을 사용하지 않는 투표 http://plugins.jquery.com/project/jquerytemplate

:

관련 문제