在 HTML 选择标签中找到默认选择的选项?

2024-02-07

我在网上找到了清除表单的代码,但它没有用于选择框的内容。使用 jquery,当我重置表单时,我尝试添加代码来选择选择框中的默认选项。我认为找到默认值的唯一方法是查找 SELECTED 选项所在的位置。然后我发现,当用户选择其他内容时,jquery 不会将其视为默认选择,而是将用户选择的新选项视为选择。

我如何找到表单中的默认选项,以便我可以正确清除它?

//http://www.learningjquery.com/2007/08/clearing-form-data
$.fn.clearForm = function () {
    return this.each(function () {
        var type = this.type, tag = this.tagName.toLowerCase();
        if (tag == 'form')
            return $(':input', this).clearForm();
        if (type == 'text' || type == 'password' || tag == 'textarea')
            this.value = '';
        else if (type == 'checkbox' || type == 'radio')
            this.checked = false;
        else if (tag == 'select') {
            //alert($('option', this).size());
            alert($('option[selected]', this).val());
        }
    });
};

我使用以下代码片段来实现此目的:

$(this).val($(this).find('option[selected]').val());

option[selected]将获得“硬编码”选定的选项(默认)。option:selected相反,将获取当前选定的选项。

这适用于单选,多选需要不同的方法:

$(this).find('option').each(function(i, opt) {
    opt.selected = opt.defaultSelected;
});

这也适用于单选。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 HTML 选择标签中找到默认选择的选项? 的相关文章

随机推荐

  • connectionDidFinishLoading - 如何强制更新 UIView?

    我可以从互联网下载 ZIP 文件 后处理在connectionDidFinishLoading 中完成 并且工作正常 但没有更新UIView 元素 例如 我设置 statusUpdate text Uncompressing file 但该
  • 意图 putExtra ArrayList

    有谁知道如何添加ArrayList
  • Swift:具有多种模式的开关大小写无法绑定到变量

    在官方斯威夫特编程语言 https developer apple com library ios documentation Swift Conceptual Swift Programming Language Statements h
  • 如何将不明确的字符串解析为日期?

    我试图找出一种将字符串解析为日期对象的 简单 方法 该字符串可以是 yyyyMMdd yyyyMMddHHmm 或 yyyyMMddHHmmSS 目前 我正在查看字符串的长度 并根据长度创建一个 DateParser 有没有更优雅的方法来做
  • 使用 SciPy 绘制分位数-分位数图

    如何使用 Python 创建 qq plot 假设您有大量测量值并且正在使用某种以 XY 值作为输入的绘图函数 该函数应根据某些分布 正态分布 均匀分布 的相应分位数绘制测量值的分位数 由此产生的图让我们可以评估我们的测量是否遵循假设的分布
  • 有什么理由使用同步 XMLHttpRequest 吗?

    似乎大多数人都使用 XMLHttpRequest 执行异步请求 但显然 能够执行同步请求的事实表明可能有这样做的正当理由 那么这个合理的理由可能是什么 同步 XHR 对于保存用户数据很有用 如果您处理beforeunload您可以在用户关闭
  • 文本框不可点击但可编辑

    我有一个带有 10 个文本框的小表单 我将它们设置为当前正确的 Tab 顺序 就像我希望它们按 Tab 到的方式一样 我想知道是否有一种方法可以设置文本框 以便它们不能被选择进行编辑 除非它们被选项卡插入 即 我不希望最终用户能够单击文本框
  • 如何在Oracle中定义ON COMMIT触发器?

    oracle数据库中是否有任何方法可以定义触发器 当指定的表发生更改时 该触发器将在提交之前同步触发 如果抛出异常则回滚 Oracle中没有ON COMMIT触发机制 不过 还有一些解决方法 您可以使用带有 ON COMMIT REFRES
  • 您最喜欢的 Windbg 提示/技巧是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 等待文件可供 Win32 读取

    我正在通过调用查看目录ReadDirectoryChangesW同步地 当新文件可用时 我尝试立即访问它CreateFile with GENERIC READ and FILE SHARE READ 但这给了我ERROR SHARING
  • 在MySQL中使用存储过程时遇到两个问题

    下面是我正在其中进行利息计算的存储过程的示例代码 该代码不可执行 因为根据在游标声明之前定义创建临时表块时发现其获取问题 但如果我最近在游标声明之后定义了相同的内容 那么它会成功执行 1 我的问题是我在光标内使用该表 所以我必须在光标后定义
  • 网页抓取,获取空列表

    我很难用我的网络抓取代码找出正确的路径 我正在尝试从中获取不同的信息http financials morningstar com company profile c action t AAPL http financials mornin
  • “ipython”选项卡自动完成功能不适用于导入的模块

    IPython 上的制表符补全似乎不起作用 例如 import numpy numpy
  • 如何使用 FTPS/TLS 1.2 版模拟 FTP 连接?

    我有一个 Python 代码 使用 HTTPS 和 TLS 版本 1 2 从 FTP 读取一些文件 这是函数 凭证是从 AWS 秘密管理器读取的 def ftp connection host username password try f
  • Identity Server 3 - Ajax 调用上的 401 而不是 302

    我有一个 Web api mvc 混合应用程序 我已将其配置为使用 cookie 身份验证 这对于应用程序的 mvc 部分效果很好 Web api 确实强制执行授权 但不是返回401 Unauthorised它返回一个302 Found并重
  • 当我使用 doReturn(..).when(....) 时,PowerMockito 正在调用该方法

    我是 PowerMockito 的新手 它显示的行为我不明白 以下代码解释了我的问题 public class ClassOfInterest private Object methodIWantToMock String x String
  • QT和MFC哪个更好学[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 将对象添加到 ArrayList 指定索引处

    我认为这是一个相当简单的问题 但我不知道如何正确地做到这一点 我有一个空的数组列表 ArrayList list new ArrayList 我有一些对象 我想在其中添加对象 并且每个对象必须位于某个位置 然而 有必要将它们按每种可能的顺序
  • Inner Join 是否存在性能问题?

    目前我在我的 sp 中使用了很多内部联接 大约 7 个 它对 sp 性能有任何影响吗 左外连接是否比内连接提供更好的性能 另一件事是 如果我连接两个表 a 和 b 其中列 id 和 id1 都不可为空 我想在这里我可以进行内部联接 因为这些
  • 在 HTML 选择标签中找到默认选择的选项?

    我在网上找到了清除表单的代码 但它没有用于选择框的内容 使用 jquery 当我重置表单时 我尝试添加代码来选择选择框中的默认选项 我认为找到默认值的唯一方法是查找 SELECTED 选项所在的位置 然后我发现 当用户选择其他内容时 jqu