2016-09-10 18 views
0

我遇到上述代碼識別'defaultpagination'變量的問題。它一直在用戶界面上拋出「必需字符串參數」defaultpagination'不存在'消息。這是顯示可配置設置的編輯屏幕的一部分。輸入/ Textarea - 必需的字符串參數不存在

控制器方法如下。

@RequestMapping(value = "/update", method = RequestMethod.POST) 
public ModelAndView updateSetting(
     @RequestParam("defaultpagination") String defaultPagination, 
     @RequestParam("id") long id) { 

     Setting setting = settingService.getOne(id); 
     setting.setDefaultPagination(Integer.parseInt(defaultPagination)); 
     settingService.saveSetting(setting); 
     return new ModelAndView("redirect:/settings/setting-listing"); 
} 

thymleaf html可以在下面看到。

<form role="form" data-toggle="validator" name="createSetting" enctype="multipart/form-data" method="post" th:object="${setting}" action="/settings/update"> 
       <div class="form-group"> 
        <label for="defaultpagination">Default Pagination</label> 
        <input class="form-control" name="defaultpagination" type="number" th:field="${setting.defaultPagination}" placeholder="Enter default pagination" required="required" data-error="Pagination is required (maximum cannot exceed 100)" /> 
        <div class="help-block with-errors"></div> 
       </div> 
       <input type="hidden" th:rows="1" class="form-control" id="id" name="id" th:value="${setting.id}"/> 
       <br /> 
       <button type="submit" class="btn btn-default">Submit Button</button> 
       <br /> 
       <br /> 
       <br /> 
       </form> 

有趣的是,我可以在「輸入」標籤更改爲textarea標籤,一切都將工作正常(在defaultpagination被認可)。但是,我想使用輸入進行驗證。在這種情況下,輸入需要是一個數字。在類似的情況下,我需要一個電話號碼和電子郵件。有沒有人在百里香的輸入/ textarea標籤中遇到同樣的問題?

回答

0

一個解決方案是要改變字符串defaultPagination在控制器中的整數(如果期望作爲defaultpagination僅整數)

@RequestMapping(value = "/update", method = RequestMethod.POST) 
public ModelAndView updateSetting(
     @RequestParam("defaultpagination") Integer defaultPagination, 
     @RequestParam("id") long id) { 

另一種解決方案是使用輸入的圖案屬性標籤(只允許數字沒有小數點)

<input class="form-control" name="defaultpagination" type="text" 
pattern="\d+" th:field="${setting.defaultPagination}" placeholder="Enter default 
pagination" required="required" data-error="Pagination is required (maximum cannot exceed 100)" /> 

讓我知道,如果這些工作給你

+0

不幸的是這些工作都沒有。我收到了相同的消息,但在這種情況下,說整數'defaultpaginatinon'不存在 – Albert

+0

@Albert據我看你不需要上傳文件,所以你可以刪除「enctype =」multipart/form-數據「,並讓我知道這是否改變了一切 –

相關問題