html中怎么写jq,用jQuery替换HTML页面中的文本

如何替换jQuery中的任何字符串?

假设我有一个字符串"-9o0-9909",我想用另一个字符串替换它。

在问问题之前如何使用jQuery将HTML块替换为HTML块的可能重复,最好检查一下系统在输入问题标题时提出的自动建议

您能否详细说明为什么您认为jquery是必经之路-到目前为止的答案可能不正确。

我可以在c#页面,javascript,数据库和html页面中更改文本,但是我在考虑是否有可能在页面加载后使用jquery来实现。 我正在尝试节省时间并学习新的东西:)

您可以使用以下内容替换页面正文中第一个出现的单词:

var replaced = $("body").html().replace('-9o0-9909','The new string');

$("body").html(replaced);

如果要替换所有出现的单词,则需要使用正则表达式并将其声明为全局/g:

var replaced = $("body").html().replace(/-1o9-2202/g,'The ALL new string');

$("body").html(replaced);

如果您想要一个班轮:

$("body").html($("body").html().replace(/12345-6789/g,'abcde-fghi'));

您基本上是将页面标记内的所有HTML都带入一个字符串变量,使用replace()查找并用新字符串更改首次出现的找到的字符串。或者,如果您要查找并替换所有出现的字符串,请在混合中引入一些正则表达式。

在此处查看演示-在左上方查看HTML,以查看原始文本,下方的jQuery和右下方的输出。

代码工作得很好,谢谢scoobler。 jQuery(function($){var replace = $(" body")。html()。replace(/ 12212-522-1212 / ig,2121-2121-0000); $(" body")。html(replaced) ;});

我认为这不是非常有效...我们应该寻找更好的解决方案!

该解决方案不好,因为它更改了HTML DOM。它正在替换完整的HTML,因此重新插入了页面上的所有内容,这对于简单的网站来说还不错,但是如果您有很多JavaScript,随着DOM的更改,它们将被破坏。

除了是一个好的解决方案之外,$(" body")。html()将没有body标签。如果您打算替换body标签或其属性上的某些内容,请使用externalHTML。

是的,这样做会重新触发页面上的脚本;除了最简单的情况外,它不是解决所有问题的通用解决方案。

就像该线程中提到的其他内容一样,替换整个HTML主体不是一个好主意,因为它会重新插入整个DOM,并有可能破坏作用于这些元素的任何其他JavaScript。

相反,使用jQuery过滤器仅替换页面上的文本,而不替换DOM元素本身:

$('body :not(script)').contents().filter(function() {

return this.nodeType === 3;

}).replaceWith(function() {

return this.nodeValue.replace('-9o0-9909','The new string');

});

this.nodeType是我们要替换其内容的节点的类型。 nodeType 3是文本。在此处查看完整列表。

是的,这一个没有破坏javascript,而另一个没有破坏javascript,大大的进步!

...I have a string"-9o0-9909" and I want to replace it with another string.

下面的代码可以做到这一点。

var str = '-9o0-9909';

str = 'new string';

除了玩笑,用JavaScript替换文本节点并非易事。

我写了一篇关于此的文章:用JavaScript替换文本。

链接上的代码几乎可以处理所有情况。对我来说,它在集合中的上令人不快(child是null),并且在splitText上还会发生莫名其妙的崩溃,其原因是"分割偏移超出了文本节点的长度"。同样,"画布"拼写为" cavas"。不过,+ 1。

@bishop谢谢,我绝对需要更新该帖子。

别客气。我喜欢遵循您的代码这么短而又容易,我只是无法让它适应我的用例。我最终选择了padolseys的findAndReplaceDOMText库-重量更大,但涵盖了我能找到的所有常见情况。

html替换的想法很好,但是如果对document.body完成操作,页面将闪烁并且广告将消失。

我的解决方案:

$("*:contains('purrfect')").each(function() {

var replaced = $(this).html().replace(/purrfect/g,"purrfect");

$(this).html(replaced);

});

查阅Padolsey关于DOM查找和替换的文章,以及实现所描述算法的库。

在此示例用法中,我用tel:方案链接替换了看起来像美国电话号码的中的所有文本:

findAndReplaceDOMText(document.getElementById('content'), {

find:/\b(\d\d\d-\d\d\d-\d\d\d\d)\b/g,

replace:function (portion) {

var a = document.createElement('a');

a.className = 'telephone';

a.href = 'tel:' + portion.text.replace(/\D/g, '');

a.textContent = portion.text;

return a;

}

});

var replaced = $("body").html().replace(/-1o9-2202/g,'The ALL new string');

$("body").html(replaced);

对于变量:

var replaced = $("body").html().replace(new RegExp("-1o9-2202","igm"),'The ALL new string');

$("body").html(replaced);

$("#elementID").html("another string");

http://api.jquery.com/html/

它们并不总是相同的id,可以是不同的类名或id名称。如果我只有1个班级名称或ID名称,那不是很难,但大多数时候都是随机的。

因此,您想在整个HTML树中搜索一个字符串,然后替换它?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432760.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!)...

asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!) 原文:asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报…

Qt中translate、tr关系 与中文问题

Qt中translate、tr关系 与中文问题2010-09-22 00:15题外话:何时使用 tr ? 在论坛中漂,经常遇到有人遇到tr相关的问题。用tr的有两类人: (1)因为发现中文老出问题,然后搜索,发现很多人用tr,于是他…

html打印边距影响内容大小,关于web打印的问题,如何控制纸张大小和页边距

关于这个问题我上网查了很多资料,最后参照一个资料。编写了下面内容:但是根本达不到要求,哪位大侠有真正使用的经验?告诉我到底应该怎样弄?求一个真正使用的方法,谢谢!再就是这一行在visual stu…

win32控制台

可回显的调用方法: 这个方法步骤比较复杂,是通过创建一个新进程来模拟cmd命令行,将写命令行和回显通过管道的方式呈现。 例如: view plain 1. void CTestMFCDlg::OnOK() 2. { 3. // TODO: Add extra validation …

html是前段还是后端,javascript属于前端还是后端?

JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。前端开发和后端开发的区别在于&#xff1a…

ubuntu12.04中shell脚本无法使用source的原因及解决方法

现象: shell脚本中source aaa.sh时提示 source: not found 原因: ls -l which sh 提示/bin/sh -> dash 这说明是用dash来进行解析的。 改回方法: 命令行执行:sudo dpkg-reconfigure dash 在界面中选择no 再ls -l which sh 提…

2021年河北省高考成绩录取查询结果,2021年河北高考一本录取结果查询和录取通知书发放时间...

河北高考一本录取结果查询和录取通知书发放时间从河北教育考试院获悉,河北高考成绩查询时间已经确定。同时,考生、家长关心的各批次录取时间也已出炉。其中,本科一批高等学校录取时间安排如下:本科一批第一志愿录取结束时间为7月1…

viewgroup 渲染过程

参考 http://blog.csdn.net/luoshengyang/article/details/8372924 总体步骤 performTraversals-->measure---->layout----->draw 测量布局渲染 1.measure 测量过程 例子:FrameLayout measure 测量开始判读是否需要测量 onMeasure 求实际宽度 measureChi…

C++读取ini文件的类

C读取ini文件的类 取自:http://www.viksoe.dk/code/all_mfc.htm,里面有各种MFC常用的类 // Ini.h: interface for the CIni class. // // Written by Bjarke Viksoe (bjarkeviksoe.dk) // Copyright (c) 2000. // // This code may be used in compiled …

A20(emmc) 编译环境

1. 需要物理内存3G,或者调高虚拟内存,否则编译会报错(killed) 2. 安装jdk 3. apt-get install bison apt-get install flex apt-get install gperf apt-get install libswitch-perl apt-get install libxml2-utils

Linux查看设置系统时区

关于时区的概念,其实初中地理课已经涉及,很多人都多少了解一些,可能只是细节搞不太清楚。为什么会将地球分为不同时区呢?因为地球总是自西向东自转,东边总比西边先看到太阳,东边的时间也总比西边的早。东边…

SQL基础问题整理

在程序中,数据库操作是必不可少的部分,所以我们要备足数据库相关知识才能去应付程序中出现的种种问题。基于此,我特地在国外网站、博客上整理了一些问题,并附带了答案和解释、参考。为了保证“原汁原味”,我就保留了英…

计算机突然从桌面消失了,电脑桌面突然什么都没有了,怎么处理

★桌面-点击鼠标右键-点击排列图标-点击显示桌面图标★在桌面上右键点击→“属性”→桌面项→左下有个“自定义桌面”进入设置,把你需要的桌面项目打上勾,然后确定就行了。★先按ctrlaltdel三键打开任务管理器&#xf…

V210 时区

V210默认时区是格林尼治时间,只要把ubuntu的/etc/localtime文件拷贝到板子上就可以了 用date -R可以看到时区是否正确

腾讯或联姻优酷,微信嫁女模式引发互联网通婚潮流

据消息称:腾讯在前段时间联姻京东后有可能继续做甩手掌柜,这回要甩的是腾讯视频。 前几年,最火爆的电商业务除了电商外,再者一个就是视频业务了。 不知道大家还记得优酷当时的崛起之初的情景么?我来罗列一下: 1、 大…

微型计算机键盘上的西服的间称为,一台完整的微型计算机主要由主机箱. .键盘.鼠标及音箱.打印机组成....

阅读下面的文字,完成后面题目。(25分)“博客之父”方兴东(节选)打开百度,输入“方兴东’’搜索,100多万条信息赫然呈现。罩在方兴东头上的光环颇多:清华大学博士、专栏作家、互联网评论家……而“中国博客之父”的称号&#xff0c…

mplayer

mplayer -af volume20 *.mp3 经测试,volume在-50和50这个区间就可以了,0最佳,超过0就爆音

[翻译] 学习iOS开发的建议:如何从菜鸟到专家

[文章原地址] http://mobile.tutsplus.com/tutorials/iphone/ios-quick-tip-from-novice-to-expert/ 翻译有误之处请勿见笑,本人将在文章的部分地方添加注释,并根据需求增减文章内容,在此对原作者辛勤劳作表示感谢 iOS Quick Tip: From Novi…

计算机工程与应用查重吗,计算机工程期刊录用率_计算机工程与应用期刊_计算机八大核心期刊...

《计算机工程》杂志怎么样都是各高校开设的课程也不尽相同,但学习深度和侧重点不一样。计算机科学期刊写人脸检测的录取率高吗计算机专业发一篇sci相对比较容易,所以必须看你在那个杂志上发表,下面最顶级的也就是计算机一区的期刊&#xff0c…

如何将多个源文件编译为一个.ko

陆陆续续也写了几个Linux内核模块了,但每次都是把代码写在一个源文件中,上次尝试了写在两个.c文件中,结果没有编译通过。 无奈之下,将其中一个.c文件重命名成.h文件,再include当另一个当中。但是,在.h文件中…