jQuery 模糊事件未触发

2024-03-13

我是 jQuery 新手,所以我打赌我做错了什么,但我不明白为什么这个事件没有触发。我有一个 textarea 元素,由于正在接受数据的应用程序,需要在提交之前删除所有分隔符。我试图在文本区域失去焦点时进行清理,因此采用模糊方法。不幸的是,它似乎没有在我的表单中触发。奇怪的部分是相同的代码在 jsFiddle 中工作,但仅在最初失去焦点时才工作。对文本区域的所有后续更改和失去焦点都不会触发该事件。我还在另一个答案中读到delegate() or .on()可能需要使用方法,但我不是 100% 确定如何正确执行此操作。(jQuery 模糊() 不起作用? https://stackoverflow.com/questions/8290180/jquery-blur-not-working)代码如下,任何建议都会有帮助。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {
$("#comments").blur(function() {
    var txt = $("#comments").html();
    txt = txt.replace(/\n/g, ' ');
    txt = txt.replace(/\s{3,}/g, ' ');
    $("#comments").html($.trim(txt));
});

//$("#comments").trigger("blur"); added this to help fix the issue, but it didn't make a difference
});
</script>

HTML:
<textarea name="comments" id="comments" style="width: 100%; height:200px"></textarea>

这是 jsFiddle 链接:http://jsfiddle.net/75JF6/17/ http://jsfiddle.net/75JF6/17/

编辑:感谢您的快速回复。我已经研究了每个人的答案并听取了您的建议。我已经完成了 95%,但是仍然存在一个问题。切换到.val()方法而不是.html()是一种更好的方法,但根据 jQuery API,在调用此方法时存在以下问题textareas 其中回车符被解析出来。问题是我需要确保将它们删除以验证该字段。

注:目前使用.val()在 textarea 元素上从浏览器报告的值中去除回车符。然而,当该值通过 XHR 发送到服务器时,回车符将被保留(或由不将回车符包含在原始值中的浏览器添加)。可以使用 valHook 来解​​决此问题,如下所示:

$.valHooks.textarea = {
  get: function( elem ) {
  return elem.value.replace( /\r?\n/g, "\r\n" );
  }
};

正如我之前提到的,我是 jQuery 的新手,找不到太多有关如何在 google 和 stack Overflow 之间正确使用 valHooks 的信息。如果有人能就我最初的问题阐明这一点,我将不胜感激。


您的代码工作得很好。

还要在提交按钮上附加单击事件,因为单击按钮时不会发生模糊事件。您必须明确地使文本区域失去焦点。

$(document).ready(function () {
    $("#comments").on('blur', trimText);
    $("input[type='submit']").on('click', function (e) {
        e.preventDefault();
        trimText();
        $("input[type='submit']").submit();
    });

    function trimText() {
        var txt = $("#comments").html();
        txt = txt.replace(/\n/g, ' ');
        txt = txt.replace(/\s{3,}/g, ' ');
        $("#comments").html($.trim(txt));
    }
});

检查小提琴 http://jsfiddle.net/75JF6/29/

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

jQuery 模糊事件未触发 的相关文章

随机推荐

  • Attic 和目录中的 CVS 逗号 -v 文件

    我有一个已有多年历史的生产 CVS 存储库 并且注意到它在 Attic 和给定位置的实际目录中都有同名的逗号 v 文件 这似乎是一个错误 我的问题是 这种情况首先是如何发生的 以及当存在重复文件时 CVS 会做什么 我的猜测 希望 是 当存
  • 为什么我收到 F# 错误 FS0039:命名空间或模块“Http”未定义

    在 Visual Studio 2015 和 2017 中 我尝试使用 FSharp Interactive 中的几个 F 示例中的 Http 类 并且不断收到 错误 FS0039 未定义命名空间或模块 Http 这是示例 open FSh
  • AWS ElasticSearchService index_create_block_exception

    在增加集群大小并看到 index create block exception 后 我尝试在 AWS ElasticSearch 集群中创建新索引 我该如何纠正这个问题 我尝试搜索但没有得到确切的答案 谢谢 curl XPUT http
  • 间隔列表中范围不重叠间隔的最大总和

    有人问我这样的问题 您将获得一个间隔列表 您必须设计一种算法来找到不重叠间隔的序列 以使间隔范围的总和最大 例如 如果给定的间隔是 06 00 08 30 09 00 11 00 08 00 09 00 09 00 11 30 10 30
  • C# 快速/高效地压缩大量数据块

    我有大约 270k 个数据块对 每对由一个 32KiB 和一个 16KiB 块组成 当我将它们保存到一个文件时 我当然会得到一个非常大的文件 但数据很容易被压缩 用WinRAR对5 48GiB的文件进行强压缩后 得到的文件大小为37 4Mi
  • 如何在不破坏标签的情况下截断html?

    如何确保所有 html 标签都已关闭 出现问题是因为我想为每篇文章创建某种摘录 例如有人写了这样一篇文章 Hi everyone I m just an article and I have few strong tags strong i
  • MYSQL Docker 容器给出“未知数据库”错误

    我正在使用带有 docker compose 的 MySQL docker 容器 效果很好 唯一的问题是我收到错误unknown database database name 我每天第一次运行它 Windows启动后 之后 如果我停止它并重
  • IIS 5.1 中的 WCF 作为纯文本文件

    我刚刚在我的开发环境中设置了一个简单的 WCF 服务 到目前为止 对于 SOAP 和 JSONP 请求 端点工作正常 我已继续将此解决方案部署到托管在 IIS 5 1 上的临时服务器 我知道 但请耐心等待 并且 svc文件突然不再工作了 并
  • System.Uri 实现 ISerialized,但给出错误? [复制]

    这个问题在这里已经有答案了 可能的重复 如何 xml 序列化 uri https stackoverflow com questions 1036492 how to xml serialize a uri 据我所知Uri实现 ISeria
  • 添加迁移以在实体框架 6 中创建数据库时出错,找不到方法 CoreTypeMappingParameters

    我正在尝试运行添加迁移以在本地计算机上创建数据库 在最后几秒钟我收到此错误 找不到方法 Void CoreTypeMappingParameters ctor System Type Microsoft EntityFrameworkCor
  • IntelliJ IDEA Community Edition 可以以某种方式支持 Ultimate 的功能吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我知道社区版不支持 Ultimate 的某些功能 但我想知道无论如何都没有办法让这些功能运行 例如企业开发 如Tomcat Glassfi
  • 在 Python 中打开 .h5 文件

    我正在尝试用 Python 读取 h5 文件 该文件可以在以下位置找到这个链接 https github com yhilpisch py4fi tree master ipython source它被称为 vstoxx data 3103
  • 如何测量来自客户端的 Websocket 背压或网络缓冲区

    我正在使用 ws Node js 包创建一个到每秒发送数百条消息的服务器的简单 WebSocket 客户端连接 即使使用仅 console logs 传入消息的简单 onMessage 处理程序 客户端也无法跟上 我的理解是 这被称为背压
  • 在 C# 中创建动态扩展方法?

    是否可以解决此错误 public static class LayoutExtensions
  • 通过鼠标悬停定位工具提示

    我正在使用以下链接中找到的代码 https www d3 graph gallery com graph heatmap tooltip html https www d3 graph gallery com graph heatmap t
  • TemplateHaskell 和 IO

    如果 TH 的功能有副作用 是否有任何适当的方法可以确保它们的安全 比如说 我想要一个在编译时调用 git 并生成版本字符串的函数 LANGUAGE TemplateHaskell module Qq where import System
  • 在导航 goBack 上发送道具

    基本上我有三个屏幕 第一个是堆栈导航器 const stackNav createStackNavigator Main screen MainScreen navigationOptions navigation gt header nu
  • mvc c# jquery 如果记录存在则更新视图的一部分,否则更新表

    我正在寻求有关如何实现此功能的建议 像往常一样 我有一个带有编辑框的页面 用户在其中提交带有输入的页面 其唯一目的是将其保存到记录中 但是我想要做的 为了避免重复 是首先在表中搜索任何相似的记录 如果有任何相似的记录 我想将其返回给用户 在
  • MVVM 实现的问题:对所选项目的更改传播到列表,不希望这样

    所以我遇到了这个问题 希望你能帮忙解决 我正在使用 MVVM Light 作为框架编写 WPF 应用程序 在这种情况下 我有一个项目列表 并且 SelectedItem 绑定到用户可以在其中编辑项目的详细信息视图 在本例中 有一个 保存 按
  • jQuery 模糊事件未触发

    我是 jQuery 新手 所以我打赌我做错了什么 但我不明白为什么这个事件没有触发 我有一个 textarea 元素 由于正在接受数据的应用程序 需要在提交之前删除所有分隔符 我试图在文本区域失去焦点时进行清理 因此采用模糊方法 不幸的是