获取<div>的内容,了解其ID

时间:2016-05-18 17:31:55

标签: javascript jquery html canvas canvasjs

我正在尝试获取一个我知道部分内容的元素的内容 foo变量是正确生成的,但是我不能让它从div元素返回一个图表对象 这是我正在使用的jQuery代码:

$(".addViewport").click(function () {                   

  var foo = "#" + $(this).parent().children('div[id$="_chart"]').attr('id');

  var chart = foo.CanvasJSChart();

  chart.options.axisX.viewportMaximum += 86400000;
  chart.render();

});

这是html:

<div id="temperature">
    <div id="temperature_chart" style="height: 300px; width: 100%;"></div>
    <button class="addViewport">Viewport +</button>
</div>

我正在使用的图表库叫做CanvasJS,它有一个名为.CanvasJSChart();的方法来从特定的div元素中获取图表。Screenshot

2 个答案:

答案 0 :(得分:2)

此行返回一个字符串("#temperature_chart"):

var foo = "#" + $(this).parent().children('div[id$="_chart"]').attr('id');

这就是为什么这条线不起作用的原因:

var chart = foo.CanvasJSChart();

foo需要成为一个jQuery对象才能使所有这些工作。例如:

var foo = $(this).parent().children('div[id$="_chart"]');

答案 1 :(得分:1)

这在JSFiddle中对我有用:

$(".addViewport").parent().children().get(0)

https://jsfiddle.net/fyvh0o56/