2015-09-03 3 views
0

Я могу использовать webflow с ajax, используя POST, но не с GET.ajax call to webflow using get request

У меня есть родительский объект в верхней части моей страницы. У меня есть список потенциальных детей внизу страницы. Пользователь выбирает ссылку «добавить» потенциальным ребенком для добавления к родительскому элементу.

Полный образовывались HTML выглядит следующим образом:

<tr> 
 
    <td><a href="/prototype2/xzcreatetesttype.html?execution=e2s1&amp;_eventId=addtut&amp;tutid=148&amp;tutname=Advanced%20French">Add</a></td> 
 
\t <td>Advanced French</td> 
 
</tr> 
 
<tr> 
 
\t <td><a href="/prototype2/xzcreatetesttype.html?execution=e2s1&amp;_eventId=addtut&amp;tutid=81&amp;tutname=Algebra%20One">Add</a></td> 
 
\t <td>Algebra One</td> 
 
    </tr>

Однако это обновит всю страницу. Как сделать это ajax-вызовом, поэтому я просто обновляю один фрагмент (т. Е. Указанные дочерние элементы родителя).

ПРИМЕЧАНИЕ. Мой вопрос заключается в формировании вызова веб-потока. Я знаю как render the result

ответ

0

Вот ответ на заданный здесь вопрос. Я не уверен, нужен ли аргумент фрагментов javascript params, поскольку фрагменты для рендеринга указаны в веб-потоках «render fragments». Кажется, что функция работает без этого аргумента.

<table id="bodyInnerTable" 
 
\t style="border: 1px solid #007589; width: 100%; vertical-align: top"> 
 
\t <tr> 
 
\t \t <td id="bodyMainCellHead" colspan="2" th:text="#{label.availabletuts}">Name</td> 
 

 
\t </tr> 
 
\t 
 
\t <!-- Iterate through the children (retrieved from db and held in bean as TreeMap) 
 
\t Each <a> tag must have a unique th:id. The name attribute applies to all children in list 
 
\t 
 
\t --> 
 
\t <tr th:each="tut : ${vwNewTestType.tutMap}" th:if="${vwNewTestType.tutMap.size() > 0}"> 
 
\t \t <td><a th:id="${tut.value}" name="addtutname" 
 
\t \t \t th:href="@{'~' + ${flowExecutionUrl}(_eventId=addtut, tutid=${tut.value},tutname=${tut.key})}">Add</a></td> 
 
\t \t <td th:text="${tut.key}">id</td> 
 
\t </tr> 
 
</table> 
 

 

 
<!-- dojo .forEach will then allow for identification of which element is clicked and the webflow transition on=""addtut" is called--> 
 

 
<script type="text/javascript"> 
 
\t 
 
\t 
 
\t dojo.query("a[name=addtutname]").forEach(function(element) 
 
\t \t \t { 
 
\t \t \t  Spring.addDecoration(new Spring.AjaxEventDecoration({ 
 
\t \t \t   elementId: element.id, 
 
\t \t \t   event: "onclick" 
 
\t \t \t   //params: { fragments:"s2,s4"} 
 
\t \t \t  })) 
 
\t \t \t }); 
 
</script>