2013年10月23日 星期三

[筆記]Liferay 中使用aui:input type="checkbox"時,取不到正確的值的狀況

<Qusetion>
<aui:input type="checkbox" name="name" value="123">
<aui:input type="checkbox" name="name" value="456">
<aui:input type="checkbox" name="name" value="789">

這時候如果在後端使用一般的  request.getParameterValues("name");
不管客戶端是否有勾選Checkbox
取得的結果都會是這樣的陣列{ 123,456,789}
該怎麼解決?

 <answer>
解決方法是使用
 request.getParameterValues("nameCheckbox");
因為<aui:input> tag會在你的Checkbox的name上
幫你做name+Checkbox做為name的屬性,以作為與一般input tag的區別

當然若你想使用javascript來取值也是一樣的道理
所以javascript就要變成
 <script>
document.getElementsbyName("<portlet:namespace/>nameCheckbox")[0].value;
 </script>

被這個問題搞了兩天煩都煩死了XDrz

沒有留言:

張貼留言