0

我已将 xml 数据存储在一个数组中,我想将其设置为 xml 模型。我试过使用 oXmlModel.setXML(oPropStored); 其中 oXmlModel 是 xml 模型的名称,oPropStored 是存储 xml 数据的数组的名称。但它不起作用。

这是xml文件

<book id="bk101">
    <bookno>1</bookno>
    <author>sum</author>
    <title> Be Careful what you wish for</title>
    <desc>an sumoz book</desc>
    <price>280</price>
    <publish>11-11-2014</publish>
    <sold>100000</sold>
</book>
<book id="bk102">
    <bookno>2</bookno>
    <author>San Bod</author>
    <title> Rich Dad poor Dad</title>
    <desc>an Sanjana Boddu book</desc>
    <price>1880</price>
    <publish>08-10-2004</publish>
    <sold>240000</sold>
</book>

这是控制器代码:

var x=oData.getElementsByTagName("book");
    console.log("length of x:",x.length);

    for(var j=0; j<x.length;j++)
    {
        oProp[j]= oData.getElementsByTagName("book")[j];
        obookno[j]=oData.getElementsByTagName("bookno")[j].textContent;
    }

    for(var i=0;i<indexArray.length;i++)
        {
            for( var j=0;j<x.length;j++)
            {
                if(indexArray[i]===obookno[j])
                {
                    oPropStored[i]=oProp[j];
                    console.log("property is :",oPropStored[i]);
                }
            }

        }

    var oXmlModel= new sap.ui.model.xml.XMLModel();
    oXmlModel.setXML(oPropStored);
    console.log(oXmlModel);

在上面的代码中,我将选定的索引存储在 indexarray 中,然后将索引与我从 xml 文件中存储 bookno 的 bookno 数组进行比较。匹配的内容存储在 oPropStored 数组中,oProp 保存所有 xml 数据。此 oPropStored 数组将设置为 oXmlModel。

谢谢你

4

1 回答 1

0

尝试setData方法:

var oXmlModel= new sap.ui.model.xml.XMLModel();
oXmlModel.setData(oPropStored);
于 2016-07-21T12:01:32.277 回答