Struts <s: submit> и Struts-jquery <sj: submit> не будут работать в одной форме?
Теги Do Struts <s:submit>
а также <sj:submit>
работать в той же форме? У меня уже есть кнопки Struts <s:submit>
, но теперь я добавил <sj:submit>
, Итак, кнопка плагина Struts2-jQuery работает хорошо, но Struts <s:submit>
не работает.
<head>
<sj:head/>
</head>
<s:form id="myForm" action="part!list">
<s:submit action="part" method="list" />
</s:form>
<sj:submit targets="result" formId="myform"/>
Просьба уточнить...
1 ответ
<s:submit>
работает с формой, если она находится внутри тела <s:form>
или же <form>
тег. Для правильной работы используйте action
атрибут для сопоставления формы с действием. Вы также можете использовать <s:url>
построить URL-адрес, используемый в action
атрибут формы, который правильно строит URL даже с параметрами. Но если вы отобразите действие в <s:submit>
тег, то вы должны использовать только один атрибут action
или же method
, Это специальные параметры, используемые картографом действий. В первом случае форма action
будет переопределено, во втором случае переопределен метод действия. Это означает, что атрибуты action
а также method
в <submit>
тег используется только для переопределения отображения действия формы по умолчанию. Он используется редко, требуется DMI, если у вас есть несколько кнопок, которые используют разные методы, method
атрибут для переопределения отображения действия формы.
РЕДАКТИРОВАТЬ:
пример
<head>
<sj:head/>
</head>
<s:url var="myUrl" action="part" method="list"/>
<s:form id="myForm" action="%{#myUrl}" method="POST">
<s:submit action="part2" />
<s:submit method="list2" />
<s:submit />
</s:form>
<sj:submit targets="result" formId="myForm"/>
выше s:submit
в первом случае использовать актин по имени part2
представить, имя второго действия part
и метод list2
третье - имя действия по умолчанию part
и метод list
Аякс называет третий случай.
Если ваше действие отображается на метод list
, то вы могли бы упростить URL через
<s:url var="myUrl" action="part"/>