【问题标题】:Using JavaScript, how can I reset all the select's in my form so that the first option for each is selected?使用 JavaScript,如何重置表单中的所有选择,以便选择每个选项的第一个选项?
【发布时间】:2010-10-01 16:59:45
【问题描述】:

我有一个只包含选择字段、提交按钮和重置按钮的表单。

<form id="search_form">

<select id="country">
  <option value="-1">Select Country</option>
  <option value="22">USA</option>
  <option value="23">Germany</option>
  ...
</select>

<select id="regions">
  <option value="-1">Select Region</option>
  ...
</select>

<input type="reset" value="Reset />

</form>

每个选择字段都有一个值为“-1”的默认选项。

当用户单击重置按钮时,我希望所有选择都显示带有“-1”值的选项被选中。

使用 JQuery 执行此操作的最佳方法是什么?

【问题讨论】:

  • ?重置按钮已经完全做到了这一点,没有任何脚本帮助。
  • @bobince - 它不会那样做,它会将值重置为加载时的值,在编辑的情况下并不完全相同。
  • &lt;input type="reset"&gt; 将值重置为defaultValue/defaultChecked/defaultSelected 属性,这是 HTML 中 value/checked/selected 属性的值。 (如果没有选项具有 selected 属性,则其行为与第一个选项一样。)它不会重置为 onload 值,在表单值内存的情况下,这可能与 HTML 值不同。在上面的标记中,reset 将两个选择都设置为-1

标签: javascript jquery


【解决方案1】:

您只需拨打一个.val() 电话,如下所示:

$("#search_form select").val("-1");

或整个处理程序:

$("#search_form input:reset").click(function(e) {
  $(this).closest("form").find("select").val("-1");
  e.preventDefault();
});​

You can give it a try here,但如果您只是使用它来默认值而不是重置它们,我会使用按钮而不是 type="reset"

【讨论】:

    猜你喜欢
    • 2012-03-21
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 2021-06-27
    • 2014-06-20
    • 2017-10-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多