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

时间:2012-10-30 16:51:21

标签: javascript jquery json struts2

我有一个选择标签。表单内的s:select。我想向行动发送一个帖子请求。我有struts 2 json插件到位。我不是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>

`

1 个答案:

答案 0 :(得分:1)

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

首先,您需要在呈现页面的源代码中找到目标元素并创建选择器。它应该看起来像select[name='searchEngine'] option:selected

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

// get element value
var selectedItem = $("select[name='searchEngine'] option:selected").val();
// send post request
$.post("destination_url", {item: selectedItem}, function() {
    alert("ok");
});

查看示例there并阅读入门指南there

那就是它。