Error on load Model Uncaught TypeError: Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1 is not of type 'Node'
Error on load Model Uncaught TypeError: Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1 is not of type 'Node'
当我调用我的 XMLModel 并尝试 oModel.getXML 浏览器控制台上出现问题:
"Uncaught TypeError: Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1 is not of type 'Node'"
但是如果,我 oModel.setXML 直接在代码中,如:
oModel.setXML("<questionnaire><question><id>A01</id><text>Whats is you ID Number?</text><answer>1234</answer></question></questionnaire>");
那么错误就不会发生
这是我的 onInit 控制器函数:
var oModel = new sap.ui.model.xml.XMLModel();
oModel.loadData("model/questionario.xml");
var view = this.getView();
view.setModel(oModel);
var oData = oModel.getXML();
console.log(oData);
//This is what i expect to do with the return
var oData = oModel.getProperty("/pergunta/texto");
var label_01 = view.byId("lbl_01");
label_01.setText(oData);
},
这是我的 xml 模特
<questionnaire>
<question>
<id>A01</id>
<text>Whats is you ID Number?</text>
<answer>1234</answer>
</question>
</questionnaire>
感谢大家的帮助
您可能正在为数据加载的异步特性而苦恼;您正在尝试在数据尚未加载时获取数据。
要么切换到同步加载——绝对不推荐!——要么在使用attachRequestCompleted
事件处理程序加载数据后获取数据:
var oModel = new sap.ui.model.xml.XMLModel();
oModel.loadData("model/questionario.xml");
oModel.attachRequestCompleted(function(oEvent) {
var oData = oModel.getXML();
console.log(oData);
});
当我调用我的 XMLModel 并尝试 oModel.getXML 浏览器控制台上出现问题:
"Uncaught TypeError: Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1 is not of type 'Node'"
但是如果,我 oModel.setXML 直接在代码中,如:
oModel.setXML("<questionnaire><question><id>A01</id><text>Whats is you ID Number?</text><answer>1234</answer></question></questionnaire>");
那么错误就不会发生
这是我的 onInit 控制器函数:
var oModel = new sap.ui.model.xml.XMLModel();
oModel.loadData("model/questionario.xml");
var view = this.getView();
view.setModel(oModel);
var oData = oModel.getXML();
console.log(oData);
//This is what i expect to do with the return
var oData = oModel.getProperty("/pergunta/texto");
var label_01 = view.byId("lbl_01");
label_01.setText(oData);
},
这是我的 xml 模特
<questionnaire>
<question>
<id>A01</id>
<text>Whats is you ID Number?</text>
<answer>1234</answer>
</question>
</questionnaire>
感谢大家的帮助
您可能正在为数据加载的异步特性而苦恼;您正在尝试在数据尚未加载时获取数据。
要么切换到同步加载——绝对不推荐!——要么在使用attachRequestCompleted
事件处理程序加载数据后获取数据:
var oModel = new sap.ui.model.xml.XMLModel();
oModel.loadData("model/questionario.xml");
oModel.attachRequestCompleted(function(oEvent) {
var oData = oModel.getXML();
console.log(oData);
});