2011-07-13 58 views
0

我知道如何使用request.getParameter(「foo」)來引用HTML元素的名稱。 但是我在表單中有各種元素,每個元素都有一個獨立的'class'屬性。有沒有什麼方法可以通過他們的類名稱來引用它們? 我的控制器在下面的表格:在春天mvc控制器中按類參考html元素

@Controller 
@MultipartConfig() 
public class FooController { 
    //get parameters 
    return "view"; 
} 

我的HTML輸入元素在下面的表格:

<input class="bar" type="checkbox" name="elementName" /> 

基本上我想在我的控制器地說,「給我類的所有元素'酒吧'」。可能嗎?

回答

1

不,控制器實際上並不知道視圖的內容。

參數如

request.getParameter("foo") 

來自HTTP請求,而不是從閱讀HTML頁面。提交表單時,「foo」部分來自表單元素的「name」屬性。

相反,您可以使用一些JavaScript來獲取與特定CSS類匹配的元素列表,然後動態編輯表單提交到GET/POST這些元素的內容到您的控制器。

0

不,這是不可能的,因爲當用戶將數據POST到您的web應用程序時,不會發送HTML元素類名 - 僅輸入元素的名稱和值。

0

根據上述,沒有。但是:如果你使用Spring Forms with its taglib和一個支持窗體類,Spring會自動將窗體元素綁定到窗體類成員。你的處理方法則變爲:

@Controller 
public class MyController { 
    @RequestMapping("/foo/somevalue.do") 
    public String FooController (
     @ModelAttribute("myForm") MyFormBean formBean 
     ){ 
     return "view"; // name of the JSP 
    } 
} 

的表單bean:

class MyFormBean 

private String elementName 
//getters and setters 

你的JSP:

<form:input path="elementName" />