如何为2个datepickers编辑highstocks.js

时间:2014-08-21 09:24:18

标签: javascript jquery jsp highcharts datepicker

我有一个页面a.jsp,其中包含了b.jsp和c.jsp

b.jsp有一个带有日期范围的高价图表。 c.jsp也有一个带有日期范围的高价图表。

这就是我设置datepiceker的方式

function(chart) {
   setTimeout(function() {
        $('input.highcharts-range-selector',$('#'+ options.chart.renderTo)).datepicker()
   }, 0);
});

这就是我在highcharts中选择值的方法

 $.datepicker.setDefaults({
                    dateFormat : 'yy-mm-dd',
                    onSelect : function(dateText) {
                        var from = $('input.highcharts-range-selector:eq(0)').val();
                        var to = $('input.highcharts-range-selector:eq(1)') .val();
                        alert(to +"---"+from );
                        alert(from +"+==="+to);

 http://jsfiddle.net/BWEm5/

我需要做的是从datepicker获取datepicker值,但我总是得到第一个datepicker的值,因为名称是相同的。在这两种情况下 我需要更改js,以便它工作正常,并给我两个日期 我已经复制了js 2页,但它不起作用我也更改了第二个js highcharts-range-selector 中的元素名称,但它不起作用

1 个答案:

答案 0 :(得分:0)

这些行:

var from = $('input.highcharts-range-selector:eq(0)').val();
var to = $('input.highcharts-range-selector:eq(1)') .val();
由于您选择了0和1个索引,因此

将为您提供第一个日期选择卡的日期。如果你想要更多,只需使用:

var from = $('input.highcharts-range-selector:eq(0)').val();
var to = $('input.highcharts-range-selector:eq(1)') .val();
var from2 = $('input.highcharts-range-selector:eq(3)').val(); //third picker
var to2 = $('input.highcharts-range-selector:eq(4)') .val(); //fourth picker

或事件更好(更快):

var inputs = $('input.highcharts-range-selector'),
    from = inputs[0].value, //first picker
    to = inputs[1].value, //second picker
    from2 = inputs[2].value, //third picker
    to2 = inputs[3].value; //fourth picker

演示:http://jsfiddle.net/BWEm5/175/