2016-11-16 16 views
6

Tôi đang cố gắng để thêm một ngắt dòng trong biểu đồ js callback v2 tooltipChart js dòng v2 tooltip callback phá vỡ

mã của tôi:

var myChart = new Chart(ctx, { 
    type: 'line', 
    data: data, 
    options: { 
    tooltips: { 
     callbacks: { 
     label: function(tooltipItem, data) { 
      var tooltip = "example tooltip"; 
      var otherTooltip = "other tooltip"; 
      return tooltip + "\n\r" + otherTooltip; 
     } 
     } 
    } 
    } 
}); 

Sử dụng \r, \n hoặc kết hợp cả hai không phải là làm việc, bất cứ ai có bất kỳ ý tưởng?

Tôi đang sử dụng biểu đồ js v2.3.0 bằng cách này.

CẬP NHẬT

Tôi đã khắc phục được vấn đề!

Chuyển đổi văn bản tooltip để mảng của chuỗi (Tôi sẽ bỏ qua phần đầu từ mã của tôi ở trên) ví dụ

... 
label: function(tooltipItem, data) { 
    var firstTooltip = "tooltip1"; 
    var otherTooltip = "tooltip2"; 
    var tooltip = new Array(firstTooltip, otherTooltip); 
    return tooltip; 
} 

và thì đấy!

bây giờ chú giải công cụ có ngắt dòng.

Trả lời

-2

Hãy thử sử dụng:

return tooltip + "<br />" + otherTooltip; 
+1

gọi lại không thể xử lý thẻ HTML (xem câu trả lời cập nhật của tôi, tôi đã cố định nó bản thân mình) –

6

Cách để làm điều đó, chỉ là thêm một chức năng gọi lại cho các tài sản tooltip trả về một mảng các chuỗi, mỗi một trong những chuỗi sẽ được đặt trong một dòng mới.

tooltips: { 
      callbacks: { 
       label: function (tooltipItem, data) { 
        return ['first thing', 'another thing', 'and another one']; 

       } 
      } 
      } 

Xem jsfiddle này ...

https://jsfiddle.net/alelase/6f8wrz03/3/

+0

Nó hoạt động nhưng nó có lẽ không muốn để có biểu tượng chú giải mỗi khi có – John

+1

@John Trong trường hợp bạn không muốn biểu tượng chú giải trong mỗi dòng chỉ cần sử dụng gọi lại tiêu đề thay vì nhãn. Trong đoạn mã trên bạn có thể thay đổi "label" theo "title" để xem kết quả. –

Các vấn đề liên quan