javascript - 解析 xml 后,结果未定义

标签 javascript jquery xml ajax

Possible Duplicate:
Keeps saying result property is not defined. Why?

我正在解析xml,我想要的是解析后返回xml。问题是在我的 getResult() 中功能result值为 undefined 。为什么以及如何让它发挥作用?

这是我的代码

var result  = '';

var Xml = {
to      : null,
from    : null,
url     : null,

init: function (fromaddress, toaddress, link) {
    from    = fromaddress;
    to      = toaddress;
    url     = link;

    this.requestXml();
    return this;
},

requestXml: function () {
    $.ajax({
        type: "GET",
        url: url,
        dataType: "xml",
        success: this.parseXml
    });
},

parseXml: function (xml) {
    console.log('xml: ' + $(xml));
    result = $(xml);
},

getResult: function () {
    console.log('Result: ' + Xml.result); //<--- Here result has undefined value
    return result;
}
};

最佳答案

Xml.result 从未被设置。也许我遗漏了一些东西,但是您需要在 parseXml 中执行此操作才能设置其结果字段:

this.result = $(xml);

并且在 getResult 中,您的 console.log 调用不应显示未定义。您甚至可以让它返回 this.result

另一件事是,在初始化程序中,您应该使用“this”关键字设置每个属性。

关于javascript - 解析 xml 后,结果未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13286177/

相关文章:

javascript - html span 标签组件

javascript - AngularJs:以编程方式按两列中的任意一列进行过滤

jQuery - 向元素添加跨浏览器的 css 样式

android - 如何在 android xml 布局中将 9 个按钮放在 3 行中?

Javascript 警报进入 ionic 登录页面

javascript - 在代码所在的位置添加新元素,而不是在另一个元素之后

javascript - 隐藏按钮无法正常工作

javascript - 水平 Accordion 中的 Jquery 选择器

java - 如何将 java.util.Date 对象转换为 dateTime 规范表示的受限形式

javascript - 在浏览器中呈现后使用 javascript 和 css 样式化 XML(不是 HTML)