2011-03-23 69 views
0

我创建div元素,如下所示,并在div和innerText中插入一些html内容。Javascript元素到字符串

var creatediv=document.createElement("DIV"); 
var html="<div align="left"><a id="test" >test</a></div>"; 
creatediv.innerHTML=html; 
creatediv.innerText="testing"; 

现在我的问题是如何检索更新的html变量在这里。

感谢,

拉吉

+1

作为便笺:'“

”'不能正确转义。 – polarblau 2011-03-23 22:18:11

+0

你不会改变'html'变量,那么“更新”是什么意思?你知道你实际上是在'div'内创建一个'div',对吧? – 2011-03-23 22:18:30

+0

@polarblau:是的你的权利,在这里我想要实现上述场景的方法。 – rajputhch 2011-03-23 22:19:25

回答

2

你应该能够检索creatediv使用creatediv.innerHTML当前HTML。

var creatediv=document.createElement("DIV"); 
var html="<div align=\"left\"><a id=\"test\" >test</a></div>"; 
creatediv.innerHTML=html; 
creatediv.innerText="testing"; 
html = creatediv.innerHTML; 
+0

它不工作,它说未定义。 – rajputhch 2011-03-23 22:35:39

0

你只覆盖你的innerHTML在第4行因此,在你的问题价值innerHTML将等于“测试”字符串,给您的DOM实现支持非标准特性innerText或等于否则html变量的值。

+0

这里我不想只测试,我需要整个html div与thw更新值测试。 – rajputhch 2011-03-23 23:12:26

+0

已更新如何? *叹* – 2011-03-23 23:18:11

+0

我不明白,你的评论是什么在这里。 – rajputhch 2011-03-24 00:01:41

0

先将creativ追加到dom树,然后通过函数getElementById进行检索。

document.append(creatediv); 
+0

没有运气, 你可以发布任何例子,如果你有它。 – rajputhch 2011-03-24 13:39:02

0

嗯,这是一个函数,它将值转换为字符串,如果它不是一个。空字符串返回为空或未定义的值:

function baseToString(value) { 
    if (typeof value == 'string') { 
     return value; 
    } 
    return value == null ? '' : value + ''; 
}