HTML

<input type="file" ref="upload" accept=".xml" @change="executorListchange" id="file_executor" class="outputlist_upload">

JS 调用change方法

 executorListchange(){
      this.readXML();
    },

主要代码

这样打印出来是字符串

 readXML() {
      let that = this
      var files = $('#file_executor').prop('files')
      var reader = new FileReader();//新建一个FileReader
      console.log(files)
      reader.readAsText(files[0], "UTF-8");//读取文件
      reader.onload = function(evt) { //读取完文件之后会回来这里
        var fileString = evt.target.result; // 读取文件内容
        console.log(fileString)


        var xmlDoc = null;
        if (window.DOMParser) {
          var parser = new DOMParser();
          xmlDoc = parser.parseFromString(fileString, "text/xml");
        } else {
          //IE
          xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
          xmlDoc.async = "false";
          xmlDoc.loadXML(fileString);
        }
        console.log(xmlDoc);
      }

    },

打印出为DOM结构并且渲染到页面

readXML() {
      let that = this
      var files = $('#file_executor').prop('files')
      var reader = new FileReader();//新建一个FileReader
      reader.readAsText(files[0], "UTF-8");//读取文件
      reader.onload = function(evt) { //读取完文件之后会回来这里
        var fileString = evt.target.result; // 读取文件内容


        var xmlDoc = null;
        if (window.DOMParser) {
          var parser = new DOMParser();
          xmlDoc = parser.parseFromString(fileString, "text/xml");
        } else {
          //IE
          xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
          xmlDoc.async = "false";
          xmlDoc.loadXML(fileString);
        }
        console.log(xmlDoc);

				//转成DOM结构
        $(xmlDoc).find("Interfaces").each(function(i)
        {
      			//注意  这个  Interfaces 需要进行替换  是我的xml标签  找你的xml文件规律进行循环  就是正常的DOM操作了
        });
      }

    },
GitHub 加速计划 / vu / vue
207.54 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 4 个月前
e428d891 Updated Browser Compatibility reference. The previous currently returns HTTP 404. 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐