XML文件如下:
<?xml version="1.0" encoding="utf-8"?>
<parent>
  <title>wwwwww</title>
  <author>admin</author>
  <contentall>
    <vc1>1</vc1>
    <vc2>2</vc2>
  </contentall>
</parent>使用js,我如何读取contentall标签里面的vc1,vc2的值了?xmlencodingjs

解决方案 »

  1.   

    function impFlow(){
    var form = new Ext.form.FormPanel({
         baseCls : 'x-plain',
         labelWidth : 70,
         fileUpload : true,
         defaultType : 'textfield',
         items : [{
            xtype : 'textfield',
            fieldLabel : '流程文件名',
            name : 'xmlFile',
            id : 'xmlFile',
            inputType : 'file',
            blankText : '文件不能为空。',
            anchor : '100%'
           }]
    });
     
    var win = new Ext.Window({
         title : '请选择xml文件',
         width : 400,
         height : 110,
         minWidth : 300,
         minHeight : 100,
         layout : 'fit',
         plain : true,
         bodyStyle : 'padding:5px;',
         buttonAlign : 'center',
         items : form,
         buttons : [{
          text : '打开',
          handler : function() {
           if (form.form.isValid()) {
           if(Ext.getCmp('xmlFile').getValue() == ''){
           Ext.Msg.alert('错误','请选择你要读取的文件');
           return;
           }
           xmlPath = getPath(document.getElementById('xmlFile'));
           var arr = xmlPath.split('.');
           if(arr[arr.length-1] == 'xml'){
           testProcess = loadXML(xmlPath);
           XmlToProcess(testProcess);
           win.close();
           }else{
           Ext.Msg.alert('错误','您选择的文件不是xml文件');
           }
           }
           }
         }, {
          text : '关闭',
          handler : function() {
           win.close();
           }
        }]
    });
    win.show();
    }//获取文件的绝对路径
    function getPath(obj) {
    if (obj) {
    if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
    obj.select(); 
    obj.blur();
    return document.selection.createRange().text;

    else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { 
    if (obj.files) { 
    return obj.files.item(0).getAsDataURL();
    }
    return obj.value;
    }
    return obj.value; 
    }
    }   //加载XML文件里面的内容
    function loadXML(path) {    
        var xmlDoc;   
        if (window.ActiveXObject) {   
         xmlDoc=new ActiveXObject("Msxml2.DOMDocument");   
            xmlDoc.async=true;   
            xmlDoc.load(path);   
            return xmlDoc.xml; 
        }
    }上面用的是EXTJS做的界面改成你自己的就行了,下面的两个方法不是EXTJS的
      

  2.   

    我给你的方法是读取整个xml文件的内容,不是某一个标签的内容
      

  3.   


    $(function() {
            $.ajax({
                type:'GET',
                url:'data.xml',
                dataType:'xml',
                success:function(data){
                    var _items = data.getElementsByTagName('contentall');
                    for(var i = 0 ; i < _items.length ; ++i){
                        for(var j = 0 ; j < _items[i].childNodes.length ; ++j){
                            if(_items[i].childNodes[j].nodeType==1){
                              if(window.ActiveXObject){
                                    alert(_items[i].childNodes[j].nodeName + '  ' + _items[i].childNodes[j].text);
                                }else{
                                    alert(_items[i].childNodes[j].nodeName + '  ' + _items[i].childNodes[j].textContent);
                                }
                            }
                        }
                    }
                }
            });
        });
      

  4.   

    $.ajax(
              {
                  url: "XMLFile1.xml",
                  dataType: "xml",
                  error: function (xml) {
                      alert('Error loading XML document' + xml);
                  },
                  success: function (xml) {
                      var frag = $("<ul/>");
                      //遍历所有contentall节点
                      $(xml).find("contentall").each(function (i) {
                          //获取VC1节点
                          var VC1 = $(this).children("VC1").text();
                          ///获取VC1节点
                          var VC2 = $(this).children("VC2").text();
                          });
                      //最后得到的frag添加进HTML文档中
                      $('#Div1').html(frag);
                  }
              });