我的代码中有一个错误,我尝试使用jquery删除它。
一些代码:
<div id="content">
s
<div class="breadcrumb">
<h1>Test and etc</h1> etc etc....
我想使用jquery删除s(如果存在...在某些情况下不存在)
我试过
var cont = $('#content').html();
$('#content').html(cont.replace('/s\s(.*)/','$1'));
认为上面的代码不起作用......有些冒充?
答案 0 :(得分:1)
不要使用正则表达式通过在HTML上运行替换来删除textnode,直接定位textnode
var content = document.getElementById('content'),
child = content.firstChild;
if (child.nodeType === 3) { // if textNode
content.removeChild(child);
}
答案 1 :(得分:0)
当DOM为ready
时,您需要调用代码。并删除引号。
$(document).ready(function(){
var cont = $('#content').html();
$('#content').html(cont.replace(/s\s(.*)/,'$1'));
});
答案 2 :(得分:0)
我不明白,为什么不直接从HTML源代码中删除它?
代码是自动生成的(也就是说你没有手动编写那里的代码)?因为如果是,我强烈建议你纠正错误本身。你要做的是掩盖一个bug,而不是修复它。获取错误来源并修复错误是一种很好的做法。
唉,如果你真的想这样做:你需要指定你的脚本何时被调用。最有可能的是,您希望将其放入$(document).ready()
事件中。
$(document).ready(function(){
var cont = $('#content').html();
$('#content').html(cont.replace('/s\s(.*)/','$1'));
});