首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Ajax从哈佛GSD获取日历?

如何使用Ajax从哈佛GSD获取日历?
EN

Stack Overflow用户
提问于 2013-04-15 08:42:46
回答 1查看 46关注 0票数 1

我正在尝试通过Ajax设置它,这就是我到目前为止所得到的。我已经试图弄清楚这个问题有一段时间了,但似乎无法找到合适的方法。

代码语言:javascript
复制
function getFunction()
{
$(".cals").click(function()
{
    $.get("http://events.cs50.net/api/1.0/calendars?campus=GSD&output=json", function(data, status) 
    {

        var response = "<h3>GSD Calenders</h3>\n";


        response = response + '<ul data-role="listview" data-inset="true" data-filter="true">\n';

        var jsonObject = JSON.parse(data);
        for (var i = 0; i < jsonObject.length; i++) {
            var calendar = jsonObject[i].calname;
            response = response
                + '<li><a href="#item">'
                + calendar
                + '</a></li>\n'; }


        response = response + '</ul>';


        $('#calendars').html(response);
    });
});
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-15 10:50:10

这是一个有用的小提琴:http://jsfiddle.net/rW9gx/1/

我已经将js更改为:

代码语言:javascript
复制
$(function() {

    $("#cals").click(function()
    {
        $.getJSON("http://events.cs50.net/api/1.0/calendars?campus=GSD&output=json", function(data, status) 
        {

        var response = "<h3>GSD Calenders</h3>\n";
        response = response + '<ul data-role="listview" data-inset="true" data-filter="true">\n';

            for (var i = 0; i < data.length; i++) {
                var calendar = data[i].calname;
                response = response
                    + '<li><a href="#item">'
                    + calendar
                    + '</a></li>\n'; 
            }
            response = response + '</ul>';
            $('#calendars').html(response);
        });
    });

});

以下是一些事情:

您已经将单击事件处理程序包装在一个函数(getFunction)中,这意味着只有在触发该函数之后才会应用该处理程序。我不知道这是否是有意的,也不知道您的代码样本是否完整,但我已经删除了它,并将js包装在一个文档就绪函数中,以便在加载DOM时应用它。

我将json $.get更改为$.getJSON,这只是在$.ajax$.get调用中编写dataType: "json"的快捷方式。这意味着您不必将返回数据解析为Json,因为这是您期望返回的数据。

除此之外,它工作得很好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16006043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档