웹 사이트를 개발 중입니다. 서버 측에서는 HTML을 조작/생성하기 위해 Python (및 Genshi)을 사용하고 있습니다. 하지만 나는 같은 종류의 HTML 조각을 자바 스크립트를 사용하여 클라이언트 쪽에서 조작하고있는 것으로 나타났습니다.서버와 클라이언트 간의 HTML 재사용
예제를 보여 드리겠습니다.
<form .... >
<ul>
<li id="i1">Name: <input type="text" name="i1" value="Item 1" /> <a href="#">[del]</a></li>
<li id="i2">Name: <input type="text" name="i2" value="Item 2" /> <a href="#">[del]</a></li>
</ul>
<a id="addnew" href="#">[new]</a>
</form>
참고 : 나는 항목의 편집 가능한 목록을 가지고 가정하자 [new]
앵커 동적 폼에 새 항목을 추가합니다. 서버에 대한 요청을하지 않아도됩니다.
서버와 클라이언트 모두이 "템플릿"(의사 코드)를 알고있다 :
<li id="${id}">Name: <input type="text" name="${name}" value="${val} " /> <a href="#">[del]</a></li>
서버는 초기 HTML 목록을 만드는 알고 있으며, 클라이언트는 알고있다 사용자가 앵커를 사용하여 항목을 추가 및 제거 할 수있게합니다.
이와 같은 시나리오에서 재사용을 개선하기위한 모범 사례는 무엇이라고 생각하십니까? 나는 이미 내가 피할 싶습니다 알고
어떤 접근 방법 :
- 자바 스크립트를 사용하여 초기 목록을 작성. 사용자 상호 작용의 일부만 개선하기 위해 자바 스크립트를 사용하려고합니다
- Genshi와 붙어있어서 클라이언트와 서버간에 재사용 할 수있는 템플릿 언어를 사용합니다.
- 서버 측에서 Javascript 생성. 이전에 시도했는데 간접적 인 추가 수준으로 인해 디버그하는 것이 어려움
클라이언트 측에서 프레임 워크를 사용하고 있습니까? jQuery 프로토 타입 또는 다른? –
클라이언트 측에서 jQuery 사용. –
나는이 문제에 대한 좀 더 일반적인 접근법을 찾고 싶다. 그러나 jQuery에 특화된 해결책이이 경우에는 괜찮을 것이다. 만약 그게 옵션이라면 –