0

現時点では、次のような線形ゲージがあります。

$("#depthBar-" + conveyanceId).kendoLinearGauge({
    pointer: {
        value: 0,
        shape: "arrow",
        color: "transparent",
        start: 0,
        reverse: true
    },
    scale: {
        majorUnit: 500,
        minorUnit: 100,
        min: -2000,
        max: 2000,
        vertical: false,
        reverse: false,
        ranges: [
            {
                from: -2000, // LimitLo
                to: -1500,
                color: "#ffc700"
            },
            {
                from: 2000, // LimitHi
                to: 1500,
                color: "#ffc700"
            }, {
                from: 2000, // LimitHiHi
                to: 1800,
                color: "#c20000"
            }, {
                from: -5000,
                to: -1800,
                color: "#c20000" // LimitLoLo
            }, {
                from: 0,
                to: 286,
                color: "lightblue"
            }
        ]
    }
});

私がやろうとしているのは、最後の範囲 (水色を色として使用する範囲) の「to」値を動的に更新することです。しかし、そのプロパティを更新する方法がわかりません。これは私が現在物件を探している方法です:

$('#depthBar-' + conveyanceId).data("kendoLinearGauge").options.scale.ranges[4].to = newVal;

ただし、これはうまくいかないようです。ステートメント全体を tmp 変数に割り当てて Chrome デバッガーで検査すると、探している正しい範囲が得られます。「to」プロパティに新しい値を設定できないだけです。助言がありますか?

4

1 に答える 1

0

解決:

 $('#depthBar-' + conveyanceId).data("kendoLinearGauge").options.scale.ranges[4].to = depthMessage;
 $('#depthBar-' + conveyanceId).data("kendoLinearGauge").redraw();
于 2013-09-13T11:56:27.180 に答える