把.html转换成.jsp中jqplot画图表不能正常显示,出错的心得

在做这个的时候,明明html中是完全可行的,如下图:

但后缀名改成.jsp后竟出现如下情况:

这太坑爹了吧,我的图呢!

哎,又要自己找代码问题了,无奈!

先给出我还没修改前的代码吧,关于里面的.js,.css的,自己下个jqplot,里面都有,你们自己解决吧,哈哈

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <base href="<%=basePath%>">    
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	
	<title><%=enterpriseName1 %> 能源管理中心</title>    
    
    <link rel="stylesheet" type="text/css" href="css/Smoothness/style.css" />
    <link rel="stylesheet" type="text/css" href="css/jQuery/jqPlot/jquery.jqplot.min.css" />
    <link type="text/css" rel="stylesheet" href="css/jQuery/jqPlot/syntaxhighlighter/styles/shCoreDefault.min.css" />
    <link type="text/css" rel="stylesheet" href="css/jQuery/jqPlot/syntaxhighlighter/styles/shThemejqPlot.min.css" />
  
    <script type="text/javascript" src="js/jQuery/jquery.min.js"></script>
    
    <style type="text/css">
        *
        {
            margin: 0px;
            padding: 0px;
        }
        
        a
        {
            text-decoration:none;
        }
        
        a:hover
        {
            color:#FF0000;
        }
        
        body
        {
            font-size: 12px;
            font-family: "Microsoft YaHei";            
        } 
        
        .menu div
        {
            margin-bottom: 8px;
        }
        
        #topMenu ul
        {
            list-style-type: none;
        }
        #topMenu ul li
        {
            float: left;
             200px;
            text-align: center;
        }
        
        #headerBar 
        {
             100%; height: 35px; line-height: 35px;padding-left: 10px;
        }
        
        #headerBar div
        {
            float: left; text-align: center;
        } 
        
        #footerBar
        {
            margin: 0px auto; text-align: center; border-top: 1px dashed #b8b8b8;color: #b8b8b8; margin-top: 15px;
        }  
        
    </style>

  </head>
  
  <body>
    <!-- 页头 -->
    <div id="headerBar" class="ui-widget-header">
        <div id="logo">能源管理中心</div>
        
        <div id="topMenu">
            <ul>
                <li><%=enterpriseName1 %></li>
                <li>能源管理中心</li>
            </ul>
        </div>
    </div>
    
    <!-- 内容 -->
    <div id="chart1" style="800px; height:300px"></div>
    <button class="button-reset">恢复</button>
    
    <div id="chart2" style="800px; height:300px"></div>
    <button class="button-reset">恢复</button>
    
    <!-- 页脚 -->
    <div id="footerBar">
        copyright © 2013 特种设备能效测试研究院 All Rights Reserved.
    </div>

    <script type="text/javascript">
    
    // Chart 1
    $(document).ready(function () {
        var s1 = [[1, 112000], [2, 122000], [3, 104000], [4, 99000], [5, 121000], 
        [6, 148000], [7, 114000], [8, 133000], [9, 161000], [10, 173000]];
        var s2 = [[1, 10200], [2, 10800], [3, 11200], [4, 11800], [5, 12400], 
        [6, 12800], [7, 13200], [8, 12600], [9, 13100]];        

        plot1 = $.jqplot("chart1", [s2, s1], {
            // Turns on animatino for all series in this plot.
            animate: true,
            // Will animate plot on calls to plot1.replot({resetAxes:true})
            animateReplot: true,
            cursor: {
                show: true,
                zoom: true,
                looseZoom: true,
                showTooltip: false
            },
            series:[
                {
                    pointLabels: {
                        show: true
                    },
                    renderer: $.jqplot.BarRenderer,
                    showHighlight: false,
                    yaxis: 'y2axis',
                    rendererOptions: {
                        // Speed up the animation a little bit.
                        // This is a number of milliseconds.  
                        // Default for bar series is 3000.  
                        animation: {
                            speed: 2500
                        },
                        barWidth: 15,
                        barPadding: -15,
                        barMargin: 0,
                        highlightMouseOver: false
                    }
                }, 
                {
                    rendererOptions: {
                        // speed up the animation a little bit.
                        // This is a number of milliseconds.
                        // Default for a line series is 2500.
                        animation: {
                            speed: 2000
                        }
                    }
                }
            ],
            axesDefaults: {
                pad: 0
            },
            axes: {
                // These options will set up the x axis like a category axis.
                xaxis: {
                    tickInterval: 1,
                    drawMajorGridlines: false,
                    drawMinorGridlines: true,
                    drawMajorTickMarks: false,
                    rendererOptions: {
                    tickInset: 0.5,
                    minorTicks: 1
                }
                },
                yaxis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        forceTickAt0: true
                    }
                },
                y2axis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        // align the ticks on the y2 axis with the y axis.
                        alignTicks: true,
                        forceTickAt0: true
                    }
                }
            },
            highlighter: {
                show: true, 
                showLabel: true, 
                tooltipAxes: 'y',
                sizeAdjust: 7.5 , tooltipLocation : 'ne'
            }
        });
      
    });
    
    // Chart 2
	$(document).ready(function(){
	  var data = [
	    ['厂区一', 12],['厂区二', 9], ['厂区三', 14], 
	    ['厂区四', 16],['厂区五', 7], ['厂区六', 9]
	  ];
	  var plot1 = jQuery.jqplot ('chart2', [data], 
	    { 
	      seriesDefaults: {
	        // Make this a pie chart.
	        renderer: jQuery.jqplot.PieRenderer, 
	        rendererOptions: {
	          // Put data labels on the pie slices.
	          // By default, labels show the percentage of the slice.
	          showDataLabels: true
	        }
	      }, 
	      legend: { show:true, location: 'e' }
	    }
	  );
	});
	</script>   
    
    <script type="text/javascript" src="js/jQuery/jqPlot/jquery.jqplot.min.js"></script>
    <script type="text/javascript" src="js/jQuery/jqPlot/syntaxhighlighter/scripts/shCore.min.js"></script>
    <script type="text/javascript" src="js/jQuery/jqPlot/syntaxhighlighter/scripts/shBrushJScript.min.js"></script>
    <script type="text/javascript" src="js/jQuery/jqPlot/syntaxhighlighter/scripts/shBrushXml.min.js"></script>

	<script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.barRenderer.min.js"></script>
	<script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.highlighter.min.js"></script>
	<script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.cursor.min.js"></script> 
    <script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.pointLabels.min.js"></script>
    
    <script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.pieRenderer.min.js"></script>
    <script type="text/javascript" src="js/jQuery/jqPlot/plugins/jqplot.donutRenderer.min.js"></script>
  </body>
</html>



经过整个上午的努力,得到了一个简单的解决方案,如下所示嘿:

其实很简单啦 ,就是把

 <base href="<%=basePath%>"> 
这句给删了,然后再加上<script type="text/javascript" src="js/excanvas.js"></script>这句,关于excanvas.js上网随便下个,好像jqplot里面也有。然后再把后缀改成.jsp,哈,完美运行中............
原文地址:https://www.cnblogs.com/cnJun/p/3279395.html