【问题标题】:Get Object XmlDocument value获取对象 XmlDocument 值
【发布时间】:2021-09-30 01:40:29
【问题描述】:

我正在执行对外部 api 的 ajax 调用(无法修改)以将存储文件上传到文件夹中。此请求必须返回一个路径(例如“C:\Doctos\File.pdf”,但在 console.log 返回如下内容之后:

#document "C:\Doctos\File.pdf"

所以我的问题是,我该怎么做才能只获取我想要的文本而不对 api 进行任何更改(因为我无法做到)。

这是我正在使用的 ajax 调用。

警察局。此 ajax 调用使用为开发 api 的开发团队提供的结构,因此也无法修改 dataType 等内容

var data = new FormData();
var files = $('#fileUpload').get(0).files;

if (files.length > 0) {
    data.append("UploadedFile", files[0]);
}

$.ajax({
    type: 'POST',
    url: 'api/v1/moreurl/UploadFile',
    contentType: false,
    processData: false,
    data: data,
    success: function (data) {
        var res = data;
        //Returns above example
        console.log(res);

        //Returns something like <p>[object XMLDocument]</p>
        $('#MyInput').attr('src', res);
    }
});

【问题讨论】:

    标签: javascript jquery asp.net ajax file-upload


    【解决方案1】:

    我会使用正则表达式从接收到的数据中获取所需的字符串。把它放在success 行之后。

    var regex = />\"(.*)\"/;
    var matched = regex.exec(data);
    var result = matched[1];
    console.log(result);
    

    正则表达式匹配您示例中最后引用的字符串。

    【讨论】:

      【解决方案2】:

      你可以用jQuery获取xml中的数据

      $.ajax({
          type: 'POST',
          url: 'api/v1/moreurl/UploadFile',
          contentType: false,
          processData: false,
          data: data,
          success: function (data) {
              // Get the contents of the xml
              var file = $(data).find('string').text();
              $('#MyInput').attr('src', file);
          }
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-04-13
        • 2023-03-17
        相关资源
        最近更新 更多