Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在xml文档中搜索标记_Javascript_Xml - Fatal编程技术网

Javascript 在xml文档中搜索标记

Javascript 在xml文档中搜索标记,javascript,xml,Javascript,Xml,这是我的xml文档 <item> <timeslot>67363</timeslot> <object>8GRM1</object> <status>A</status> <expl/> </item> <item> <timeslot>67365</timeslot> <timeslot2>6

这是我的xml文档

<item>
    <timeslot>67363</timeslot>
    <object>8GRM1</object>
    <status>A</status>
    <expl/>
</item>
<item>
    <timeslot>67365</timeslot>
    <timeslot2>67366</timeslot2>
    <object>8TEC6</object>
    <status>p</status>
</item>

67363
8GRM1
A.
67365
67366
8TEC6
P
我想(使用javascript)搜索任何特定项目的标记是否存在


任何帮助都将不胜感激。。提前感谢

如果您对使用jQuery感到满意,可以执行以下操作:

var xml = "<item><timeslot>67363</timeslot><object>8GRM1</object><status>A</status><expl/></item><item><timeslot>67365</timeslot><timeslot2>67366</timeslot2><object>8TEC6</object><status>p</status></item>";

var textInsideTimeslotTag = $(xml).find('timeslot').text();
var xml=“673638GRM1A67365673668TEC6p”;
var textInsideTimeslotTag=$(xml).find('timeslot').text();

不确定要执行什么操作,但稍有更改,如果搜索的标记是空标记,则该方法将返回null。也请看看这个


我尝试过使用getXMLvalue(x[i],“expl”);其中,grtxmlvalue是函数getXMLvalue(节点,标记名){var tagValue=“”;//如果(节点.getElementsByTagName(标记名)[0])存在标记,{//如果标记不为空,则获取值如果(节点.getElementsByTagName(标记名)[0].firstChild.nodeValue;}返回标记名;}事实上,问题是我无法将xml保存到变量中,因为我必须对它进行更改。。。我想逐节点搜索xml文档,以查看该空白标记是否存在。。实际的问题是空白标记,因为它返回一个空白值。这就是为什么我找不到包含该标记的项目
function getXMLvalue (node,tagname) 
{ 
  var tagValue = ""; // If tag exists 
  if (node.getElementsByTagName(tagname).length > 0) 
  { // If tag is not empty get the value 
    if (node.getElementsByTagName(tagname)[0].firstChild != null) 
    { 
      tagValue = node.getElementsByTagName(tagname)[0].firstChild.nodeValue; 
    }
    else
    {
      return null;            
    }
  } 
  return tagValue; 
}