应禁用下拉选项中的第一个值 - Rails

时间:2013-09-10 13:23:28

标签: ruby-on-rails ruby

我有下拉列表,其中包含以下选项

  ---select an option---
  option 1
  option 2
  option 3
  option 4

我想禁用我的第一个值---在下拉列表中选择一个选项---因此无法选择它作为选项。

我的代码在这里

<%= f.select :options, options_for_select([[" ---Select an option---", ""], "option 1", "option 2", "option 3", "option 4"]), :style => "margin:20px; width:356px;" %>

3 个答案:

答案 0 :(得分:2)

在Ruby中它看起来像这样:

<%= f.select options_for_select(["", "Please select", "option 1", "option 2", "option 3", "option 4"], :disabled => "Please select", :selected => "Please select") %>

将一个类分配给select标记并将样式移动到样式文件

会很好

答案 1 :(得分:1)

它应该是这样的:

<%= f.select :options, [[" ---Select an option---", ""], "option 1", "option 2", "option 3", "option 4"], {}, :style => "margin:20px; width:356px;" %>

另外,最好给它一个css class,然后在类中添加margin / width / etc而不是代码。 (编辑 - 当我说'更好'时,我只是想要一个更好的练习 - 如果你想再次使用相同的格式,你可以添加该类,如果你想修改它看起来你只是修改一个类 - 它不会改变它预先形成的方式,只是让你的代码更容易使用。)

您可以采用span

的方法
<span class="options_select">
  <%= f.select :options, [[" ---Select an option---", ""], "option 1", "option 2", "option 3", "option 4"], {} %>
</span>       

答案 2 :(得分:0)

好吧,我认为您需要设置第一个选项禁用,但选择为true。 所以它只会在第一时间选择第一个选项,然后用户就不能选择它。

<!DOCTYPE html>
<html>
<head>
<script>
function favBrowser()
{
var mylist=document.getElementById("myList");
document.getElementById("favorite").value=mylist.options[mylist.selectedIndex].text;
}
</script>
</head>

<body>
<form>
Select your favorite browser:
<select id="myList" onchange="favBrowser()">
  <option selected="true" disabled="disabled">Select Browser</option>
  <option>Google Chrome</option>
  <option>Firefox</option>  
  <option>Internet Explorer</option>
  <option>Safari</option>
  <option>Opera</option>
</select>
<p>Your favorite browser is: <input type="text" id="favorite" size="20"></p>
</form>
</body>

</html>

希望这会对你有帮助..