在Windows8的Metro应用$就行不通($.Ajax doesnt work in windo

2019-09-16 20:45发布

我想我现有的HTML5应用迁移到一个Metro应用,并发现两个主要障碍:

  1. .innerHtml不会因安全原因支持
  2. $就只是不工作(我使用JSONP从服务器进行数据交换)

问题:

  1. 如何绕过.innerHtml安全问题?
  2. 做什么其他替代我必须做出$就工作?

Answer 1:

Q2:我有类似的问题,我改变了我的$不用彷徨到:

function getJSON(url, data, callback, errorCb) {
if (data != null)
{
    var params = [];
    for (var key in data) {
        params.push(key + "=" + encodeURI(data[key]));
    }
    url += "?" + params.join("&");
}

WinJS.xhr({ url: url }).then(
    function (result) {
        if (callback != null)
            callback(result.response, result.status);
    },
    function (result) {
        if (errorCb)
            errorCb(result.status);
    });
}


Answer 2:

Q1:当您使用的WinRT块抛出异常或警告.innerHtml动态内容。 但他们不使用阻止你.innerHTML所有的时间。 你试过toStaticHTML方法类似如下:

element.querySelector("#myId").innerHTML = "some string" + toStaticHTML(yourHTMLContent);

Q2:常规的JavaScript xhr调用我的作品。 其实我认为,我用.ajax发送一些简单的GETPOST之前的请求,但最终使用xhr其他原因

希望这可以帮助。



文章来源: $.Ajax doesnt work in windows8 metro app