2012-03-26 81 views
0

如何使用會話保留複選框的狀態?Ruby on Rails:保留html.erb中的複選框狀態

我試過以下,但不起作用。

<form name="size"> 
    <input type="checkbox" name="size[]" value="1" <%@selected.include?("1")%> /> 1 
    <input type="checkbox" name="size[]" value="2" <%@selected.include?("2")%> /> 2 
    <input type="checkbox" name="size[]" value="3" <%@selected.include?("3")%> /> 3 
    <input type="submit" value="Filter" /><br></form> 

@selected是控制器中的一個實例變量,用於存儲使用會話的複選框的狀態。

回答

2

假設@selected是一個數組,因爲我可以從你的代碼示例推斷,你可以做

<input type="checkbox" name="size[]" value="1" <%= @selected.include?("1") ? "checked" : "" %> /> 1 
<input type="checkbox" name="size[]" value="2" <%= @selected.include?("2") ? "checked" : "" %> /> 2 
<input type="checkbox" name="size[]" value="3" <%= @selected.include?("3") ? "checked" : "" %> /> 3