0

我的代码是:

var userName = document.getElementById("txtSearch").value;
    var xhr = new XMLHttpRequest();
    xhr.open("POST", "http://www.rest.net/services/abc.svc/json/GetXml", true);
    xhr.responseType = "text";
    xhr.setRequestHeader("Content-Type", "text/xml;charset=UTF-8");
    var packet = '<?xml version="1.0" encoding="utf-8" ?><CompanyRequest xmlns="http://schemas.datacontract.org/2004/07/abc.DomainModel" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><CompanyName>company</CompanyName></CompanyRequest>';
    xhr.onreadystatechange = function () {
        if (xhr.readyState==xhr.DONE) {            
            var parser = new DOMParser();
            var response = parser.parseFromString( xhr.responseText, "text/xml");
            var n = response.getElementsByTagName("CompanyResponse");               
            for (var i = 0; i < n.length; i++) {
                var p = n[i].getElementsByTagName("CompanyList1");
                for (var j = 0; j < p.length; j++) {
                    var l = p[j].getElementsByTagName("Company");
                    for (var k = 0; k < l.length; k++) {
                        var a = l[k].getElementsByTagName("Id")[0].firstChild.nodeValue;

                        if (a != null) {
                            sessionStorage.setItem(1, a);
                            WinJS.Navigation.navigate("Search.html");
                        }
                    }
                }
            }
        }
    }

    xhr.send(packet);

我对此很陌生。我想在按钮单击时导航到 search.html 页面。但事实并非如此......我无法理解它有什么问题......帮帮我..

提前致谢..........

4

1 回答 1

0

如果您使用的是 Visual Studio 中的导航模板,那么您需要:

  • 确保您的主页已使用该名称注册
  • 确保正在实例化 Page 控件

WinJS.Navigation 命名空间不适用于将应用程序导航到 Internet 网址;它旨在管理应用程序中的导航例如您的包中已有的文件。

如果您尝试导航整个应用程序,您可以将 window.location.href 设置为您希望导航到的完整 URL。这将拆除您当前的脚本状态并将您批发到该页面。

如果您确实在使用单页导航,我建议您进入您拥有的导航调用,并查看它引导您验证您已正确注册目的地的位置,并且导航模板示例代码正在工作。

于 2012-11-26T17:09:05.223 回答