0

我的jsp代码为:

    <s:url value="add" var="addUrl"/>
    <form:form name="add" action="${addUrl}" modelAttribute="content" method="post">
        <input type="hidden" name="add" value="" />
        <form:select path="id" class="dClass" onchange="submit()">
        <form:options items="${list}" /></form:select>
        <input type="submit" class="btn" value="Refresh Content" />
   </form:form>

而且我对这两个调用都有一个控制器方法,有什么方法可以将其与提交表单的位置区分开来?从下拉菜单还是从提交按钮?

@RequestMapping(value = "/add", method = RequestMethod.POST)
    public String getContentById(Model model, String id,Content content,HttpServletRequest request) {

if(call by onChange)

else if(call by submit button)

}
4

2 回答 2

1

请注意,onchange="submit()"不会提交您的页面。它将查找名称为 submit 的函数。在该函数中,您可以使用这样的代码$('form#form_id').submit();来提交。查看submit-a-form-using-jquery了解更多详情。

于 2013-11-06T12:12:56.053 回答
0

@Vinoth Krishnan 感谢您的回答,它现在可以工作了:) 在我的表单中添加了一个文件为“dropDownSubmit”

function submitForm(formId){
        var input = $("<input>").attr("type", "hidden").attr("name", "dropDownSubmit").val("true");
        $("#" + formId).append($(input));
        $("#" + formId).submit();
    }

然后在控制器中:

if("true".equalsIgnoreCase(form.getDropDownSubmit()){
 ..
}
else{
 .. button submit
}
于 2013-11-06T12:45:06.807 回答