【问题标题】:Ajax parsexml without jquery没有 jquery 的 Ajax parsexml
【发布时间】:2012-11-04 00:11:22
【问题描述】:

我有一段代码可以获取 Gmail 的未读计数。它使用的是 jQuery,我想知道如何在没有 Javascript 库的情况下使用 Javascript。

$.ajax({
  type: "GET",
  url: "https://mail.google.com/mail/feed/atom",
  dataType: "xml",
  success: parseXml
});

function parseXml(xml)
{
  var result = $(xml).find("fullcount").text();
  alert("count:" + result);
}

【问题讨论】:

  • 这是您要找的吗? tizag.com/ajaxTutorial
  • 这是一个合法的问题,但有人给 hin 一个 -1..
  • @GabrielSantos 当向下箭头悬停时出现的文本气泡指出“这个问题没有显示任何研究工作,”。这个问题确实没有显示任何研究成果,因为除了这个网站之外,一个简单的谷歌搜索显示了大量的结果。
  • @Daedalus 我认为用户做了一些研究,就像我所做的那样,知道他是否做过。
  • @GabrielSantos Javascript ajax, javascript parse xml。分别是第三个结果和第二个结果。问题不显示研究。

标签: javascript ajax jquery gmail


【解决方案1】:

试试这个

var  xmlhttp=new XMLHttpRequest();

xmlhttp.setRequestHeader("Access-Control-Allow-Origin","https://mail.google.com");
xmlhttp.open("POST","https://mail.google.com/mail/feed/atom",false,"username","pwd");
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var mailCount=xmlDoc.getElementsByTagName("entry").length;

【讨论】:

  • 感谢您的回答。我在控制台中收到错误:错误:INVALID_STATE_ERR:DOM 异常 11。我认为您的脚本中需要用户名和密码?我发布的代码中不需要。
【解决方案2】:

好的,解决了

xhrGmail = new XMLHttpRequest();
xhrGmail.open('GET','https://mail.google.com/mail/feed/atom')
xhrGmail.onload = function() { console.log(xhrGmail.responseText.split("<fullcount>")   [1].split("</fullcount>")[0]) }
xhrGmail.send(null);

【讨论】:

  • 我试过了,但它对我不起作用。我正在使用 Firefox v29 并且可以导航到 mail.google.com/mail/feed/atom 以查看 xml 没有问题。任何想法为什么代码可能无法正常工作?
猜你喜欢
  • 2021-04-19
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
  • 2012-11-28
  • 2023-03-20
  • 2010-10-13
  • 2015-08-17
  • 2013-10-23
相关资源
最近更新 更多