从标记值 jquery 中删除动态生成的字符串
Remove dynamically generated string from tag value jquery
我有一个如下所示的代码,我想删除在页面加载时动态创建的字符串:
<nav id="navtop"> Dynamically generated text here
<ul><li>Item 1</li><li>Item 2</li>...</ul></nav>
问题是如何从标记文本值中删除此字符串 "Dynamically generated text here"(由脚本在页面加载时动态生成)?
我正在考虑使用这段代码,但没有成功:
var str = "dynamic text";
var $holder = $('#navtop');
var value = $holder.text();
if(value == str){
$holder:contains(str).remove();
$( "value:contains('dynamic text')" ).remove();
非常感谢任何帮助。
您可以执行以下操作 -
var ulText = $('#navtop ul').text();
var navText = $('#navtop').text();
var textToRemove = navText.substring(0, navText.indexOf(ulText));
$('div').html(textToRemove);
$('#navtop2').html($("#navtop2").html().replace(textToRemove, ''));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Original DOM:
<nav id="navtop">Dynamically generated text here
<ul>
<li>Item 1</li>
<li>Item 2</li>...</ul>
</nav>
Text to remove:
<div></div>
<br/>
<br/>After removing dynamic text:
<nav id="navtop2">Dynamically generated text here
<ul>
<li>Item 1</li>
<li>Item 2</li>...</ul>
</nav>
<span></span>
首先将ul
的内容存入临时变量:
var inside = $("#navtop ul").clone();
使用此代码:
$("#navtop").html(inside);
我有一个如下所示的代码,我想删除在页面加载时动态创建的字符串:
<nav id="navtop"> Dynamically generated text here
<ul><li>Item 1</li><li>Item 2</li>...</ul></nav>
问题是如何从标记文本值中删除此字符串 "Dynamically generated text here"(由脚本在页面加载时动态生成)?
我正在考虑使用这段代码,但没有成功:
var str = "dynamic text";
var $holder = $('#navtop');
var value = $holder.text();
if(value == str){
$holder:contains(str).remove();
$( "value:contains('dynamic text')" ).remove();
非常感谢任何帮助。
您可以执行以下操作 -
var ulText = $('#navtop ul').text();
var navText = $('#navtop').text();
var textToRemove = navText.substring(0, navText.indexOf(ulText));
$('div').html(textToRemove);
$('#navtop2').html($("#navtop2").html().replace(textToRemove, ''));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Original DOM:
<nav id="navtop">Dynamically generated text here
<ul>
<li>Item 1</li>
<li>Item 2</li>...</ul>
</nav>
Text to remove:
<div></div>
<br/>
<br/>After removing dynamic text:
<nav id="navtop2">Dynamically generated text here
<ul>
<li>Item 1</li>
<li>Item 2</li>...</ul>
</nav>
<span></span>
首先将ul
的内容存入临时变量:
var inside = $("#navtop ul").clone();
使用此代码:
$("#navtop").html(inside);