我想將我檢索到的xmlHttpRequest對象放入XMLListModel中。我正在使用qml。主要目標是評估我得到的xml並在列表中顯示條目。如果有更好的方法 - 讓我知道。將XmlHttpRequest解析爲XmlListModel
我發現了一個「解決方案」這裏分析的xml: http://developer.nokia.com/Community/Discussion/showthread.php/232839-Qt-Quick-and-DOM-doc-responseXML-returns-null 這裏 但它是非常差的深XML結構挖掘,因爲有角落找尋XML樹的每一個級別的循環。
所以2點的方法,我想有:
1:XMLList中
這將是我最喜歡的:解析我從XMLHttpRequest來一個的XMLList事情得到的數據,並獲取列表免費(自動)。 這傢伙想一樣,但沒有寫出來的解決方案: http://qt-project.org/forums/viewthread/6460
我也試過:
XmlListModel{id: xmlModel}
...
xmlModel.xml = xhr.responseXML;
第一個分開,最後一行,在那裏我得到的XML。這說「錯誤:不能將null分配給QString」。我相信,我得到一個正確的XML答案,因爲上面提到的搜索每個孩子和標記名的方法正在工作。 另外,我發現了一個類似解析器的不同的表示法,但這也不起作用。
2:XPath的
變種DOC =新的DOMParser()parseFromString(響應, 「文本/ XML」); 回覆DOMParser未定義..所以我想我會需要一些庫,但沒有找到任何關於該主題(除未回答的問題)。 (與.getElementById和evaluateXPath以及我在網上找到的許多其他東西一樣)
任何提示都會被讚賞!
謝謝,這個解決方案起初。但後來我碰到了邊界,查詢不能被嵌套或迭代。我需要一個有多個子條目(章節長度)的條目(即書)。據我所知。這是不可能的。所以我需要在一堆亂七八糟的循環中迭代來獲取數據。或者你知道另一種方式? I.e:使用沒有xmllistmodel的xpath? 因此,一個完整的解決方案可以生成一個數組,其中存儲頁數。 – mike
錯誤是: 必需的基數是零或一(「?」);獲得一個或多個基數(「+」)。 – mike
你可以創建'Repeater'的'ListView':外部'ListView'具有一個用於書籍的'XmlListModel',並且它的每個'Repeater'委託包含'XmlListModel'和一個生成的XPath表達式來選擇章節各自的書。 「Reapeater」的嵌套'XmlListModel'使用'ListView'的外部'XmlListModel'中的XML數據。 – hiddenbit