好的,所以我正在开发一个外包的项目,现在我可以在投入生产之前加入并修复所有内容。我目前正在尝试修改创建选择表单字段的行。我读了一些在ruby中使用的不同表单助手方法,以及该方法的一些可用选项。
我的问题是我似乎无法弄清楚如何在select元素中显示默认值而不会在下拉选项中显示它。这就是该行目前的样子。
<%= select :profile, :sexual_interest, SEXUAL_INTEREST_ARRAY, {:prompt => 'sexuality'}, {:class => 'selectFull'} %>
我尝试使用以下方法更改部分选项:default =&gt; &#39;性欲&#39;然后尝试:disabled =&gt; &#39;性欲&#39 ;.但我似乎只能从select元素中完全删除该选项,或者将其作为下拉列表中的第一个值并显示为默认值。
如果您在使用ruby表单助手设置选择字段的默认值时遇到问题,请参阅此帖子selecting a default for option field
如果有人能给我一些关于如何解决这个问题的见解,我将不胜感激。任何想法都会有所帮助,感谢您的阅读。
-Alan
答案 0 :(得分:1)
无法在HTML中执行此操作,因此您必须使用其他方法。
可能的解决方案
假设你有:
<select name="selectBox" id="selectBox">
<option value="default">default</option>
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
然后你的javascript看起来像这样:
$("#selectBox").change(function(){
$("#selectBox option[value='default']").remove();
});
上的示例
<强>选择器强>
$('#selectBox option[value="SEL1"]')
索引:
$('#selectBox option:eq(1)')
对于已知文本:
$('#selectBox option:contains("Selection 1")')
希望它可以帮到你!