0

我正在使用 mgwt 构建移动应用程序。此应用程序包含来自 xml 文件的内容列表。我正在尝试通过应用程序将新内容添加到这些 xml 文件中。

这是xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <options>
            <option>c1 A</option>
            <option>c1 B</option>
    </options>
 </root>

我正在尝试添加一个新的

<option>c1 C </option>

<options> 父母中的标签,所以结果是这样的。

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <options>
            <option>c1 A</option>
            <option>c1 B</option>
            <option>c1 C </option>
    </options>
 </root>

我正在尝试使用以下代码,但没有任何反应。

RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, GWT.getHostPageBaseURL()+"folderName/fileName.xml");
    try{
        builder.sendRequest(null, new RequestCallback() {

            @Override
            public void onResponseReceived(Request request, Response response) {
                Document document = XMLParser.parse(response.getText());


                Element elementRoot = document.getDocumentElement();

                Element options = (Element)elementRoot.getElementsByTagName("options").item(0);

                Element optionElement = document.createElement("option");
                optionElement.appendChild(document.createTextNode("c1 C"));

                options.appendChild(optionElement);

            }

            @Override
            public void onError(Request request, Throwable exception) {

            }
        });
    }catch(RequestException e){
        Window.alert("Unable to build the request.");
    }

怎么了?请帮忙。

4

1 回答 1

1

如果您在 phonegap 容器中运行代码,GWT.getHostPageBaseURL() 将指向您设备上的 file://somepath。我猜你想从服务器加载数据。您将需要使用正确的网址。

另一方面,您应该意识到浏览器中的 XML 处理非常慢,应该考虑使用 JSON 作为替代格式。

于 2013-06-26T12:51:20.250 回答