Jquery 很难从HTML字符串中找到特定范围的内部文本
我是Jquery新手,在识别HTML字符串中的特定标记时遇到问题。我的HTML字符串是:Jquery 很难从HTML字符串中找到特定范围的内部文本,jquery,find,each,html,Jquery,Find,Each,Html,我是Jquery新手,在识别HTML字符串中的特定标记时遇到问题。我的HTML字符串是: <span id="name">myname</span> <span id="familyname">mysurname</span> <span id="telnum">mytelnum</span> <span id="postcode">myPostCode</span> <sp
<span id="name">myname</span>
<span id="familyname">mysurname</span>
<span id="telnum">mytelnum</span>
<span id="postcode">myPostCode</span>
<span id="email">my@email.com</span>
但在我的代码中,find函数似乎不起作用!
这是我的密码:
var myHtmlCode = '<span id="name"> myname</span> <span id="familyname">mysurname</span> <span id="telnum"> mytelnum</span><span id="postcode"> myPostCode</span><span id="email">my@email.com</span>';
var $temp = $(myHtmlCode).find('span').contents().each(function() {
alert(this.val());
});
var myHtmlCode='myname myurname mytelnummyPostCodemy@email.com';
var$temp=$(myHtmlCode).find('span').contents().each(函数()){
警报(this.val());
});
感谢您提供的任何帮助……不要调用
内容,因为您可以从span
元素调用文本函数,所以这里没有任何帮助
如果您希望能够浏览已解析的字符串,则必须将跨度嵌入到一个顶级元素中
您可以将文本放入如下对象中:
var texts = {};
$('<div>'+myHtmlCode+'</div>').find('span')
.each(function(){ texts[this.id] = $(this).text() });
var text={};
$(''+myHtmlCode+'').find('span')
.each(函数(){text[this.id]=$(this.text()});
然后,您可以读取文本,例如,text.name
(打开控制台以查看文本
对象)
当然,您也可以将其作为全局变量,即使用window.name
而不是text.name
,但建议您避免将全局名称空间弄乱。我使用了以下代码:
var $temp = $(myHtmlCode).each(function () {
if (this.id == "name") {
alert(this.innerHTML);
}
});
Dystory,谢谢你的帮助。你的样本结果是[object]。你能找到问题的根源吗?你有没有试着提醒它?不要。它可以很好地处理此警报:警报(this.innerHTML),但我将其用于另一个html代码,但它不适用于此新代码,以下是新的html代码:098209 14/12/2012 10/12/2012是测试10/12/2012 14/12/2012 testType
var $temp = $(myHtmlCode).each(function () {
if (this.id == "name") {
alert(this.innerHTML);
}
});