0

我试图让用户创建自己的 rss 聚合器,它工作正常,但我的问题是当用户输入的东西对于例如数字无效时,它给了我 "req.send(options.data)" ,并且WINJS功能被阻塞,无效时无法修改请求,谢谢。

                  for (var vv = 0; vv < urll.length; vv++) {

    var Input = { title: [], des: [], link: [], len: "" };

    WinJS.xhr({ url: urll[vv] }).done

        (function (rss) {

                     var items = rss.responseXML.querySelectorAll("item");

                      Input.len = items.length;
                      for (var n = 0; n < items.length; n++) {
                          Input.title[n] = items[n].querySelector("title").textContent;
                          Input.des[n] = items[n].querySelector("description").textContent;
                          Input.link[n] = items[n].querySelector("link").textContent;
                          if ((Input.link[n] == null) || (Input.link[n] == "")) {
                              Input.link[n] = items[n].querySelector("guid").textContent;
                          }
                      }


                 });
                 if (vv >= 1 && DataInput[DataInput.length - 1].title.length < 2) { DataInput.length = DataInput.length - 1 }
                 DataInput.push(Input);


}

}

4

1 回答 1

0

不要使用 done,而是尝试使用 .then 并提供一个处理函数,以防 xhr 请求出错:http: //msdn.microsoft.com/en-us/library/windows/apps/hh700337.aspx

于 2013-04-08T04:48:16.543 回答