0

嗨朋友们,我正在使用 Jquery 插件 JUSTGUAGE 来生成 svg 图。

我在html中有以下代码

HTML

      <div>
        <div>
    <div id="g1" class="graph">
                        </div>
         </div>         
                                </div>

最初,在收到 AJax 响应之后,页面中有一个图表,我需要更新同一个图表,而不是创建一个新图表,并且 div 中有两个图表,就像它不断增加一样。

AJAX 代码

 $function{ 
 //code
.done(
            function(data) {
                var cal = 0;
                   cal= data.cal
                   generate(cal);        
                )

当我发送第一个请求一个图和第二个请求另一个图生成。

只是测量代码

function generate(cal) {

    var g1 = new JustGage({
        id : "g1",
        value : cal,
        min : 0,
        max : 100,
        title : "Protein",
        label : "",
        levelColorsGradient : false
    });

我只想覆盖旧的而不是创建新的。

4

1 回答 1

0

justGauge 有一个功能可以做到这一点,称为“刷新”

将您的 ajax 更改为:

.done(
        function(data) {
            var cal = 0;
               cal= data.cal
               g1.refresh(cal);        
            })

并更改您的 justgage 代码,以便 g1 可以在您的 generate 方法之外访问:

var g1;
function generate(cal) {
    g1 = new JustGage({
      id : "g1",
      value : cal,
      min : 0,
      max : 100,
      title : "Protein",
      label : "",
      levelColorsGradient : false
  });
}
generate(0); //or whatever your want initial value to be

如果您在 ajax 调用之前不想要任何量具,您可以改为执行以下操作:

.done(
        function(data) {
            var cal = 0;
               cal= data.cal
               if(g1)
                   g1.refresh(cal);        
               else
                   generate(cal);
            })
于 2015-01-27T01:40:55.397 回答