如果我使用以下代码:
var output = '<div class="info"><span class="bus-number">468 (58247)</span></div>';
var span = $(output).find('span.bus-number').text();
console.log(span);
我可以看到值
468(58247)
在控制台中,但如果我尝试使用wrap()方法,并使用以下代码:
var output = '<div class="info"><span class="bus-number">468 (58247)</span></div>';
$(output).find('span.bus-number').wrap('<b></b>');
console.log(output);
我无法获取此HTML代码:
<div class="info"><b><span class="bus-number">468 (58247)</span></b></div>
如何获取包含元素的字符串?
答案 0 :(得分:3)
您不是在更新jQuery对象时更新字符串,因此使用 html()
方法从jQuery对象中获取HTML内容。
echo "hello 123 worLD" | grep -oP "\b(?=[A-Z]+[a-z]|[a-z]+[A-Z])[a-zA-Z]*"
&#13;
var output = '<div class="info"><span class="bus-number">468 (58247)</span></div>';
// create a div element with html content
output = $('<div/>', {
html: output
// get span
}).find('span.bus-number')
// wrap the span
.wrap('<b></b>')
// back to previous selector
.end()
// get the html content
.html();
console.log(output);
&#13;
或使用dom元素的 outerHTML
属性。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
var output = '<div class="info"><span class="bus-number">468 (58247)</span></div>';
// create jQuery object
output = $(output)
// get span element
.find('span.bus-number')
// wrap span with b
.wrap('<b></b>')
// back to previous selector and get dom object
// using [0] after get html content from dom
.end()[0].outerHTML;
console.log(output);
&#13;
答案 1 :(得分:1)
您可以使用html()
功能。
注意html()
函数返回元素的INNER html,所以你需要用另一个元素包装它来获取html:
var output = '<div class="info"><span class="bus-number">468 (58247)</span></div>';
var span = $(output).find('span.bus-number').text();
console.log(span);
var span = $(output).find('span.bus-number').wrap('<b></b>');
console.log(span.parent('b').html());
console.log(span.parents('div.info').html());
console.log($('<div>').append(span.parents('div.info')).html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
答案 2 :(得分:0)
因为var forEach = function (array, callback, scope) {
for (var i = 0; i < array.length; i++) {
callback.call(scope, i, array[i]);
}
};
var myNodeList = document.querySelectorAll('i');
forEach(myNodeList, function (index, value) {
console.log(index, value);
});
只是一个不可变的字符串。
例如,您可以
output