如何使用Struts2 jQuery插件<sj:submit>按钮?

问题描述 投票:0回答:2

我有 Struts 2 jQuery 插件

<sj:submit>
按钮,当我单击该按钮时,它不会像 Struts
<s:submit>
按钮那样触发操作类。单击按钮后我需要保持同一页面。

请查看以下代码差异:

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
<s:submit>
标签工作,但事实并非如此。

java jquery jsp struts2 struts2-jquery
2个回答
1
投票

为了

<sj:submit>
正常工作,
targets
属性必须设置为某个值,并且表单必须具有
id
属性。

<s:form action="product!list" id="searchForm">     
  <sj:submit targets="results"/>
</s:form>

1
投票

您应该在

<sj:head/>
的正文中包含
<head>
标签。该标签链接页面上的 JQuery 和
stylesheet
以及其他初始内容,没有它,Ajax 调用不会进行,因此页面会刷新。查看提交标签的示例
<sj:submit>
:

<%@ 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>
© www.soinside.com 2019 - 2024. All rights reserved.