特定の夜に飲んだビール、その量、種類を記録するために使用できるシンプルな Sinatra アプリがあります。これらのユーザーが入力した夜の 1 つを編集するために、飲酒イベントが作成されたときに入力された値を反映する単純なフォームがあります。
<input type="text" value="<%= @beer.name %>" name="name"/>
<input type="text" value="<%= @beer.price %>" name="price"/>
したがって、データベースの値から値を設定することは問題ありません。では、ドロップダウンの値を選択するにはどうすればよいですか?
<select name="night">
<option value="Monday">Monday</option>
<option value="Tuesday">Tuesday</option>
<option value="Wednesday">Wednesday</option>
<option value="Thursday">Thursday</option>
<option value="Friday">Friday</option>
<option value="Saturday">Saturday</option>
<option value="Sunday">Sunday</option>
</select>
インラインjqueryを使用して実行できることがわかりました:
<script>
$(document).ready(function(){
$(".edit select[name=type] option").each(function(){
if ($(this).val() == "<%= @beer.type %>"){
$(this).attr("selected", true );
}
});
$(".edit select[name=night] option").each(function(){
if ($(this).val() == "<%= @beer.night %>"){
$(this).attr("selected", true );
}
});
});
</script>
しかし、インライン js に頼る必要はありません。助言がありますか?