我有一个输入表单,我想在页面加载时设置键盘焦点。我正在使用带有 Bootstrap 的 Rails,并且我有用于表单的 formtastic_bootstrap。这是一个简化的示例:
<%= semantic_form_for item, url:url_for_event(:create) do |f| %>
<%= f.input :title, label: t('.title') %>
<%= f.input :description, label: t('.description') %>
<%= f.submit t('.create'), class: 'btn btn-primary pull-right' %>
<% end %>
我想聚焦“标题”字段,以便光标位于该字段中,并且在页面加载时出现 Bootstrap 蓝色突出显示,以便用户可以开始在该字段中输入内容。
我试过像这样在字段上设置“自动对焦”
<%= f.input :title, label: t('.title'), input_html: { autofocus: true } %>
我试过jquery
<%= javascript_tag "$('item_title').focus()" %>
我尝试过使用 Javascript
<script type="text/javascript">
document.getElementById("item_title").focus();
</script>
没有任何作用。我正在使用 Firefox 28 浏览器进行测试。我见过许多表明这些方法应该有效的例子。这里没有别的东西在玩——这是一个由 Controller Action 呈现的基本形式。它没有使用 Bootstrap 模态。
我已通过使用 Javascript 设置其值来检查 input_title
是该字段的 ID - 有效。
非常感谢任何建议。
最佳答案
试试这个
<%= f.input :title, label: t('.title'), input_html: {:autofocus => true} %>
关于ruby-on-rails - 如何使用 Rails + Bootstrap + formtastic_bootstrap 聚焦表单输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23428402/