【发布时间】:2011-08-23 13:22:47
【问题描述】:
我有一个实施了 highcharts 的 rails 应用程序。我现在正在尝试扩展它,以便它列出在特定项目上花费的小时数。我已经设置了一个 JSfiddle 示例来说明我想要实现的目标。 JSfiddle 我最初想做的是:
- 当前登录的用户进入他们的时间表,选择一个或多个项目,输入他们的小时数
- 输入的小时数和选定的项目将记录到 ProjectsHours 表中。
- 当前用户然后可以访问项目小时页面,该页面将从 ProjectsHours 表中提取数据并像我提供的 JSfiddle 示例一样显示它。
我已经对我认为可能如何完成进行了一些研究。我在highcharts website 上看到了 您可以通过设置 Ajax 请求来请求数据。
我写这个问题是因为我还是 ror 和 javascript 的初学者。
我还实现了一个使用 ajax 请求并使用 JSON 检索数据的自动完成功能。我将我的自动完成功能设置如下,这有点无关紧要,但是我为我的自动完成发布了以下 javascript 代码,因为。我个人认为我正在尝试做的事情将与我正在尝试做的事情略有相似。我可能错了。如果有人可以纠正我,谢谢。
自动完成
应用程序.js
function log(message) {
$( "<div/>" ).text( message ).prependTo("#log");
}
$("#tags1").autocomplete({
minLength: 2,
source: function(request, response) {
$.ajax({
url: "/positionlist",
dataType: "json",
data: {
style: "full",
maxRows: 12,
term: request.term
},
success: function(data) {
var results = [];
$.each(data, function(i, item) {
var itemToAdd = {
value: item,
label: item
};
results.push(itemToAdd);
});
return response(results);
}
});
}
});
【问题讨论】:
-
检查 firebug 输出,它访问什么 URL 以及请求的响应是什么?
-
我的自动完成功能工作正常。我要做的是使用 highcharts 使用 JSON 发出 Ajax 请求,以收集有关当前用户时间表信息的信息,这些信息由 ProjectHours 表中的以下属性组成::week_commencing, :hours, :user_id, :project_task_id
-
我添加了上面的示例代码,只是为了说明我的想法是我认为它可能使用类似于我执行自动完成功能的方式的 Ajax 请求。 JSfiddle 展示了我想要实现的目标,但我不知道该怎么做。我查看了 highcharts 网站上的示例,但那是完全不同的事情,并且正在使用 highcharts
标签: javascript ruby-on-rails ajax ruby-on-rails-3 highcharts