0

私はこのコードを持っています:

$.ajax({
    type: "GET",
    url: trgUrl,
    success: function (data)
    {
        var xml= $.parseXML(data);
                               {
        var obj= $.xml2json(xml);

        //....
    }
 });

そして、次のようなものにdataすることができます:

 "<name> Mike </name>"

今、問題は、を使用した後$.xml2json(xml)、名前を表示するために私が書く必要があるということです:

 alert(obj.name.value); // Mike

ただの代わりに:

 alert(obj.name);    // object object

言い換えれば、$.xml2jsonはコンテンツ<name>を別のオブジェクトに変換します(直接文字列にするのではなく)

どうすればその動作を修正できますか?誰かがこの問題を抱えていましたか?

4

1 に答える 1

2

プラグインを次のように変更します。

// Add element value
if(node.childElementCount == 0 && node.textContent != null && node.textContent != "") {
         /* comment out ".value" */
         result[node.nodeName]/*.value */= node.textContent.trim();
}

デモ:http://jsfiddle.net/ycN37/

ノードに子ノードがある場合、これにより問題が発生する可能性があります。これが、作成者が最初にオブジェクトを作成した理由である可能性があります。

于 2013-02-05T23:31:25.077 に答える