[英]Getting nodes/child nodes from html
The first thing I do is I echo some html code: 我要做的第一件事是回显一些html代码:
echo "<div>
<file>somefile</file>
<file>another file</file>
</div>";
Then I through JavaScript find all instances of file: 然后,我通过JavaScript查找文件的所有实例:
var file = document.getElementsByTagName("file");
Then I am able to get values from each file by: 然后,我可以通过以下方式从每个文件中获取值:
file[index].childNodes[0].nodeValue
Now I want to add another level to the <file>
like this: 现在,我想像这样向
<file>
添加另一个级别:
echo "<div>
<file>
<em1>element1</em1>
<em2>element2</em2>
</file>
</div>";
How can I get those em values? 如何获得这些em值? I want to do something like:
我想做类似的事情:
file[index].getValueFromEm1...
Try 尝试
file[index].childNodes[0].nodeValue
file[index].childNodes[1].nodeValue
etc... 等等...
try this 尝试这个
PHP 的PHP
<?php
echo "<div>
<file>
<em1>element1</em1>
<em2>element2</em2>
</file>
<file>
<em1>element3</em1>
<em2>element4</em2>
</file>
</div>";
?>
JS JS
<script>
var file = document.getElementsByTagName("file");
for(var i=0; i<file.length; i++)
{
var filenodes = file[i].childNodes;
for(var j=0; j<filenodes.length; j++)
{
var element_text = filenodes[j].innerHTML;
if(typeof element_text!= 'undefined')
{
alert(element_text);
}
}
}
</script>
you can still access the content of the ems like you did with the original content. 您仍然可以像使用原始内容一样访问ems的内容。
var files= document.getElementsByTagName("file");
files[0].childNodes[0].textContent
files[0].childNodes[1].textContent
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.