Here i selected 3 filters 1 from each chart and pasted that encoded url in url param. but when i press decode url button it is redrawing only middle chart filters but not th
It looks like your code is correct for the general case, but due to some quirks in the way that dc.js handles filters, you can't just restore a range filter from its serialized form.
I was able to get it working by adding a special case for arrays:
for (var i = 0; i< filterObjects.length; i++)
{
var filter = filterObjects[i].Filter;
if(filter instanceof Array) filter = dc.filters.RangedFilter(filter[0], filter[1]);
dc.chartRegistry.list()[filterObjects[i].ChartID-1].filter(filter);
}
Here is my fork of your fiddle: http://jsfiddle.net/gordonwoodhull/4dv93aht/10/
I don't think such special cases should be needed, so I opened an issue here: https://github.com/dc-js/dc.js/issues/819
Have a look at this question & working example dc.js permalink or href to share the visualisation filter state?
https://github.com/Edouard-Legoupil/3W-Dashboard/blob/gh-pages/index.html