javascript在字符串中查找div id并删除其内容

时间:2018-09-06 17:30:09

标签: javascript jquery string find

我有一个字符串,其中保存了一些可变html ,其中一个具有静态id =“ time”的div,

示例:

myString = "<div class="class">blahblah</div><div id="time">1:44</div>"

如何创建仅在某个时间中断的相同字符串? (在这种情况下为1:44)。 我找不到数字或“:”,因为在我的情况下不安全。

我没有成功尝试过的是:

  var content = divContainer.innerHTML;

  var jHtmlObject = jQuery(content);
  var editor = jQuery("<p>").append(jHtmlObject);
  var myDiv = editor.find("#time");
  myDiv.html() = '';
  content = editor.html();
  console.log('content -> '+content);

2 个答案:

答案 0 :(得分:3)

var myString = '<div class="class">blahblah</div><div id="time">1:44</div>';

//create a dummy span
//put the html in it
//find the time
//remove it's inner html
//execute end() so the jQuery object selected returns to the span
//console log the innerHTML of the span
console.log($('<span>').html(myString).find('#time').html('').end().html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:0)

您可以使用纯javascript中的正则表达式来实现此目标,如下所示:

myString.replace(/(<div id="time">).*(<\/div>)/, '$1$2')

如果只想提取1:44部分,则可以使用以下内容:

myString.match(/(<div id="time">)(.*)(<\/div>)/)[2]