0

好的,所以我正在从事一个外包的项目,现在我可以在它投入生产之前加入并修复所有内容。我目前正在尝试修改创建选择表单字段的行。我阅读了在 ruby​​ 中使用的一些不同的表单辅助方法,以及该方法的一些可用选项。

我的问题是我似乎无法弄清楚如何在不显示在下拉选项中的情况下在选择元素内显示默认值。这就是这条线目前的样子。

<%= select :profile, :sexual_interest, SEXUAL_INTEREST_ARRAY, {:prompt => 'sexuality'}, {:class => 'selectFull'} %>

我尝试使用:default => 'sexuality' 更改一些选项,然后尝试:disabled => 'sexuality'。但我似乎只能从选择元素中完全删除该选项,或者将其作为下拉列表中的第一个值并显示为默认值。

如果您只是在使用 ruby​​ 表单助手设置选择字段的默认值时遇到问题,请参考这篇文章为选项字段选择默认值

如果有人能给我一些关于如何解决这个问题的见解,我将不胜感激。任何想法都会有所帮助,感谢阅读。

-艾伦

4

1 回答 1

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();
}​);

jsFiddle上的例子​</p>

选择器

$('#selectBox option[value="SEL1"]')

对于索引:

$('#selectBox  option:eq(1)')

对于已知文本:

$('#selectBox option:contains("Selection 1")')

希望对你有帮助!

于 2012-10-31T21:19:35.220 回答