1

我在搜索表单中有一个下拉菜单和一个清晰的搜索按钮。我希望在单击按钮时清除下拉列表中的选定值。除了我无法清除下拉列表之外,所有包含在下面的咖啡脚本代码都有效。我怎样才能做到这一点?

<%= search_form_for @search, :builder => SimpleForm::FormBuilder do |f|%>
  <%= f.input :year_gteq, :collection =>years_options%>

  <%= f.input :year_lteq, :collection =>years_options%>

<%= f.submit "Clear Search", :name => nil, :id => :q_reset, :class => "btn" %>  

咖啡脚本

$("#q_reset").click ->
    $(".clear-fields").val('')
    $('input:checkbox').removeAttr('checked')
    $('#clear-dropdown-fields').prop('selectedIndex', 0)

这对我有用:

$('表单选择').val('')

4

2 回答 2

1

您可以调用reset()表单将字段返回到它们的起始值。

或者您可以设置selectedIndex0.

$('#clear-dropdown-fields').prop('selectedIndex', 0);
于 2013-03-05T23:17:07.520 回答
0

您对 2 个 dom 元素使用相同的 id,这就是为什么

$('#clear-dropdown-fields').prop('selectedIndex', 0)

不适用于第二个下拉菜单。您可以做的是使用类而不是 id 或者只是在表单中查找元素。您也可以使用val('')来重置该值。

$('form select').val('')
于 2013-03-06T07:08:27.680 回答