如何提交sj:autocompleter以及s:form

时间:2012-07-08 19:54:11

标签: jquery struts2

<s:form action="searchflight" method="post" id="flightform">
                    <s:url id="remoteurl" action="fromautofill"/>
                    <sj:autocompleter id="listFrom" name="from"
                                      label="From" parentTheme="xhtml"
                                      href="%{remoteurl}"
                                      delay="50" size="60"
                                      loadMinimumCount="2"
                                      onCompleteTopics="updateFrom"
                                      onSelectTopics="updateFrom"
                                      />
         <s:submit></s:form>

如何在点击提交按钮时提交在自动填充器中选择的值以及表单提交。

我尝试过,但总是从(自动填充名称)值中删除操作。

2 个答案:

答案 0 :(得分:0)

目前,我已经找到了另一种选择。

我添加了隐藏字段并填充了onSelectTopics of autocompleter,如下所述:

<s:form action="searchflight" method="post" id="flightform">
<s:hidden name="from"/>                    
                    <sj:autocompleter id="listFrom"
                                      label="From" parentTheme="xhtml"
                                      href="%{remoteurl}"
                                      delay="50" size="60"
                                      loadMinimumCount="2"                                      
                                      onSelectTopics="updateFrom"
                                      />
 <s:submit></s:form>


<script type="text/javascript">
 $.subscribe('updateFrom', function(event,data) {
                document.flightform.from.value=event.originalEvent.ui.item.value;
            });
</script>

答案 1 :(得分:0)

<sj:autocompleter id="listFrom"
                                 name="from"

                                 label="From" parentTheme="xhtml"
                                  href="%{remoteurl}"
                                  delay="50" size="60"
                                  loadMinimumCount="2"                                      
                                  onSelectTopics="updateFrom"
                                  />
  

请注意,如果您在autocompleter标记内使用名称,那么它就是   直接映射到模型中的getter。所以使用name属性   而不是使用隐藏标签。

     

休息没问题。