Javascript 如何从s提交数据:struts 2中选择ajax

Javascript 如何从s提交数据:struts 2中选择ajax,javascript,jquery,json,struts2,Javascript,Jquery,Json,Struts2,我有一个选择标签s:在表单内选择。我想向该行动发送一个post请求。我有Struts2JSON插件。我不懂javascript或jquery <s:form action="selectFileType" method="post" id="selectFileTypeForm"> <div> <s:select id="select" head

我有一个选择标签<代码>s:在表单内选择。我想向该行动发送一个post请求。我有Struts2JSON插件。我不懂javascript或jquery

<s:form action="selectFileType" method="post"
                             id="selectFileTypeForm">

              <div>
                 <s:select id="select" headerKey=""
                 headerValue="%{getText('uploadAttachmentType.please.select')}"
                        name="uploadAttachmentType" list="attachmentTypeList"
                        required="true" 
                        onchange="this.form.submit();"></s:select>

                    <s:hidden id="declarationObj_ideclare"
                        name="declarationObj.ideclare" />
                    <s:hidden id="declarationObj_completingpersonname"
                        name="declarationObj.completingpersonname" />
                    <s:hidden id="declarationObj_completingpersonofficaltitle"
                        name="declarationObj.completingpersonofficaltitle" />
                    <s:hidden id="declarationObj_completingpersonphone"
                        name="declarationObj.completingpersonphone" />
                    <s:hidden id="declarationObj_completingpersonext"
                        name="declarationObj.completingpersonext" />

                </div>


                  </s:form>


`Struts 2没有很好的工具来执行ajax,但您只能使用jQuery发送post请求

首先,您需要在呈现页面的源代码中找到一个目标元素,并创建选择器。它应该类似于
select[name='searchEngine']选项:selected

然后,您可以编写脚本,将所选元素的值发送到
目标\u url
。例如:

// get element value
var selectedItem = $("select[name='searchEngine'] option:selected").val();
// send post request
$.post("destination_url", {item: selectedItem}, function() {
    alert("ok");
});
请参阅示例并阅读《入门指南》


就是这样。

你能提供你试过写的代码吗?这就是(上面添加的)。struts 2似乎在每次表单提交时都会创建一个新的action类?如何实现struts 1中存在的类似状态的行为?我不同意这一点。Struts2有很好的ajax工具。看看这个插件,我不同意JS周围的任何标签包装都是一个好主意(这根本不是struts2的错误)。这也是dojo标记的问题所在。如果这是个好主意,我们也应该用XML编写Java。此处未回答的jquery标记问题的数量表明它掩盖了细节,而只有jquery的问题才能快速得到解决。