javascript - d3.json 不接受在 d3 甘特图中绘制的查询结果

标签 javascript jquery json svg d3.js

我的问题是这样的。我有一个 d3 甘特图,它在第一次加载数据时工作正常,问题是当我使用过滤器表单查询另一个数据时。生成的查询和 json 编码没问题,但 d3.json 不接受我的新结果以在 d3 甘特图中绘制。我用console.log查看了数据,没问题。

这是我获取 d3 数据的代码

d3.json("json", function(error,json){ 
var tasks = [];
var taskNames = [];
for(var i = 0; i < json.length; i++){
var HANDLERID = json[i].HANDLERID;
taskNames.push(HANDLERID);

tasks.push({"startDate": new Date(json[i].START1),
        "endDate": new Date(json[i].END1),
        "taskName": HANDLERID,
        "status": json[i].VAL1 });

tasks.push({"startDate": new Date(json[i].START2),
        "endDate": new Date(json[i].END2),
        "taskName": HANDLERID,
        "status": json[i].VAL2 });

tasks.push({"startDate": new Date(json[i].START3),
        "endDate": new Date(json[i].END3),
        "taskName": HANDLERID,
        "status": json[i].VAL3 });

}

console.log(tasks);
console.log(taskNames);


tasks.sort(function(a, b) {
    return a.endDate - b.endDate;
});
var maxDate = tasks[tasks.length - 1].endDate;
tasks.sort(function(a, b) {
    return a.startDate - b.startDate;
});
var minDate = tasks[0].startDate;

var format = "%Y-%b-%d";

var gantt = d3.gantt().taskTypes(taskNames).tickFormat(format);
gantt(tasks);

 });

这是我的 jquery 帖子

function searching(){

var input_handlermodel = $("#input_handlermodel").val();
var input_handlerid = $("#handlerid").val();

$.post("../../mini/pm/json",
{input_handlermodel : input_handlermodel, input_handlerid : input_handlerid},
function(data){$("#result").html(data);});


}

这就是我对结果查询进行 json 编码的方式

$sth1 = ibase_query($query);
$items = array();
 while($row1 = ibase_fetch_object($sth1) ) {
  array_push($items, $row1);
   }
 $result["rows"] = $items;

echo json_encode($items); 

最佳答案

只需尝试编写一个更新函数,并在加载新数据时调用它。除非正确更新图表,否则无法在同一个甘特图上绘制不同的数据。

.on('click', function(d) {  

updateChart();

});

类似这样的东西。

关于javascript - d3.json 不接受在 d3 甘特图中绘制的查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25738548/

相关文章:

json - 结构数据赋值错误: closure cannot implicitly capture a mutating self parameter

javascript - node.js rsa 加密/解密

javascript - 获取 DOM 元素的所有 css 样式(类似于 Firebug)

javascript - vs code node js中没有intellisense

javascript - 如何检查动态添加的 tealium utag 是否已提交?

Javascript/Jquery 幻灯片效果发生在错误的位置

java - 将 SOAP 响应转换为 JSONArray

javascript - NodeJS 认为我在重复参数名称,但其实我没有

javascript - 刷新复选框 javascript

javascript - 用 jQuery 替换背景图像时找不到图像