Плагин Struts2 jQuery - кнопка отправки

У меня есть кнопка отправки плагина Struts 2 jQuery, когда нажимается кнопка, она не запускает класс действия как кнопку отправки Struts. После нажатия кнопки мне нужно сохранить ту же страницу. Обратите внимание на разницу в коде ниже.

Кнопка отправки Struts - работает хорошо:

<s:form action="product!list" id="searchForm" theme="simple" method="Post">
     <s:submit action="product" method="list" value="Find" />
</s:form>

Преобразование отправки Struts в кнопку отправки Struts-jQuery - не работает:

<s:form action="product!list" id="searchForm" theme="simple" method="Post" >     
     <sj:submit />
</s:form>

если используется только действие формы <sj:submit/>, страница обновляется и работает как тег Struts, но этого не должно быть.


person user2444474    schedule 02.07.2013    source источник
comment
Определите, не работает хорошо. Что в вашей консоли JS? Что находится в журналах сервера DEBUG-level devMode = true? Что, если вы просто используете действие формы вместо установки href?   -  person Dave Newton    schedule 03.07.2013
comment
Страница ‹sj: submit /› обновляется, но этого не должно произойти, потому что поддерживается ajax. Мне нужно отправить страницу без обновления страницы.   -  person user2444474    schedule 03.07.2013


Ответы (2)


Для правильной работы <sj:submit> атрибут targets должен иметь какое-то значение, а форма должна иметь атрибут id.

<s:form action="product!list" id="searchForm">     
  <sj:submit targets="results"/>
</s:form>
person Aleksandr M    schedule 03.07.2013

Вы должны включить тег <sj:head/> в тело <head>. Этот тег связывает JQuery и stylesheet на странице и другие начальные вещи, без него вызов Ajax не выполняется, и в результате страница обновляется. См. Примеры отправки тега SubmitTag:

<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<html>
  <head>
    <sj:head/>
  </head>
  <body>
    <s:form id="form" action="AjaxTest">
      <input type="textbox" name="data">
      <sj:submit value="Submit Form" />
    </s:form>
  </body>
</html>
person Roman C    schedule 03.07.2013