单击饼图传奇高图时多次调用后端(通过相应的主干模型)

时间:2015-03-29 14:43:57

标签: backbone.js highcharts

我在主干应用程序中使用高图派图 - 图例。如果我点击饼图的一部分,它只会调用后端一次。如果我再次单击某个部分而不重新绘制图表,那么即使只有1个调用后端也是如此。但是,如果我通过单击图例重新绘制图表,然后单击饼图的一部分,则会调用两次后端。我可以在firebug调试器的控制台上看到它。如果我再次通过任何更改重新绘制图表,则后端的调用会相应增加。如何在单击饼图图表时限制这些不需要的多次调用。 点击legent也被捕获并保留。当我点击饼图时,它会累积点击次数并通过模型向后端发送多个调用。 谢谢你的到来。

代码如下:

chart: {
		backgroundColor: null,
		events:{
			redraw: function() {
				var dataObj = this.series[0].data;
				$.each(dataObj, function( index ) {
					var pathObj = dataObj[index].graphic.element;
					pathObj['contentValue']=dataObj[index].name;
					$(pathObj).popoverClosable({
						container:'div#chart-donut',
						html: true,
						trigger:'click',
						placement: 'top',
						content:'<div class="popover-dummy"></div>'
					});
					$(pathObj).on('click', function () {
						//render the corresponding popover content
						var spinner = new Spinner().spin();
						$('div.popover-dummy').html(spinner.el);
						var contentCategory=pathObj.point.name;
						var model = Backbone.model;
						if(!that.brandDetailsPopoverView || that.brandDetailsPopoverView == null){
							that.brandDetailsPopoverView = new BrandDetailsPopoverView({model:model,brandName:that.selectedBrandName,topicId:that.curTopicId,brandId:that.brandId,contentCategory:contentCategory,groupId: that.selectedGroupId,el:"#discover-popover-content"});
						}
						that.brandDetailsPopoverView.render(contentCategory);
						$('div.popover-dummy').html($('#discover-popover-content').html());
					});
				});
			}
	   },
	   margin: [10,20,10,10]
	},

0 个答案:

没有答案