“我的文本”字段的默认值以应有的方式显示,但“数字”字段为空。
<%= form_for(@game) do |f| %>
<%= render 'shared/error_messages', object: f.object %>
<%= f.label :nick_name, "Nickname: " %> (optional)
<%= f.text_field :nick_name, class: 'form-control', value: "newgame" %>
<%= f.label :players, "Number of players:" %> (3-8)
<%= f.number_field :players, class: 'form-control', value:3 %>
<%= f.submit "Create Game", class: "btn btn-primary" %>
<% end %>
该值显示在结果源html中,但未显示:
<label for="game_nick_name">Nickname: </label> (optional)
<input class="form-control" value="newgame" type="text" name="game[nick_name]" id="game_nick_name" />
<label for="game_players">Number of players:</label> (3-8)
<input class="form-control" value="3" type="number" name="game[players]" id="game_players" />
我试过value: '3'
,但这并没有什么区别。为了测试我的浏览器是否出了问题,我用一个输入字段在浏览器上创建了一个简单的html文件:
<input type='number' class='form-control' value=3>
它如预期的那样显示,所以我认为它一定是什么与我的rails应用程序。
我不知道这是否与Input value doesn't display. How is that possible?有关,因为这是一个rails应用程序。
发布于 2016-11-24 06:13:56
是的,以这种方式,对于新的游戏对象,它不会显示默认值,在控制器中,当您初始化它时,可以在其中设置一个值。
@game = Game.new(players: 3)
https://stackoverflow.com/questions/40778023
复制相似问题