2012-11-25 2 views
1

XForms를 처음 접했습니다. 내가 할 수있는 다음과 같은 경우를 알고 싶습니다 :XForms를 사용하여 XML 요소를 HTTP 헤더로 전송

:

내가 HTML 폼이 나는 XForms를이를 나타내고에서이 같은 XML 요소로 변환 제출하려는

<form> 
    <input type="text" name="search-string"/> 
    <input type="checkbox" name="search1" checked="checked" />Search option 1 
    <input type="checkbox" name="search2" checked="checked" />Search option 2 
    <input type="submit" /> 
</form> 

<data> 
    <search1>my search string</search1> 
    <search2>my search string</search2> 
</data> 

search1search2 요소는 해당 확인란이 설정된 경우에만 설정해야하며 search-string 입력의 문자열로 채워져 있어야합니다.

data 요소가 생성되면 POST http 요청을 통해 전송해야합니다.

이 모든 작업은 XForms만을 사용하여 수행 할 수 있습니까? 아니면 JS 등을 사용해야합니까?

추신 : 나는 차이가 있다면 XSLTForms를 사용하고 있습니다.

답변

2

예, 추가 자바 스크립트 지침없이 XForms로 수행 할 수 있습니다. 두 인스턴스가 필요합니다. 하나는 제출하고 다른 하나는 첫 번째 인스턴스를 채우는 데 사용합니다.

이 모델 부분 같은 것을해야한다 :

<xf:model> 
    <xf:instance id="data"> 
    <data xmlns=""> 
     <search1/> 
     <search2/> 
    </data> 
    </xf:instance> 
    <xf:instance id="work"> 
    <work xmlns=""> 
     <b1 xsi:type="boolean"/> 
     <b2 xsi:type="boolean"/> 
     <search/> 
    </work> 
    </xf:instance> 
    <xf:bind nodeset="instance('data')/search1" calculate="choose(instance('work')/b1,instance('work')/search,'')"/> 
    <xf:bind nodeset="instance('data')/search2" calculate="choose(instance('work')/b2,instance('work')/search,'')"/> 
    <xf:submission ref="instance('data') method="post" resource=".........."/> 
</xf:model> 

-Alain

관련 문제