ExtJS - Подсказка для сетки для определенных столбцов - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь создать всплывающую подсказку в моей сетке для определенных столбцов.

В моей сетке нужна подсказка для столбца 1-го и 3-го столбцов.(имя и номер телефона)

Скрипка - https://fiddle.sencha.com/#view/editor&fiddle/2lop

1 Ответ

0 голосов
/ 30 сентября 2018

Я думаю, это довольно просто.Просто поместите всплывающую подсказку в элементы столбца, где вы хотите.

columns: [{
            text: 'Name',
            dataIndex: 'name',
            tooltip: 'Name'
        }, {
            text: 'Email',
            dataIndex: 'email'
        }, {
            text: 'Phone',
            dataIndex: 'phone',
            tooltip: 'Phone'
        }, {
            text: 'Type',
            dataIndex: 'type'
        }],

И если вы хотите всплывающую подсказку для всех записей столбцов, следуйте этому коду:

var store = Ext.create('Ext.data.ArrayStore', {
fields: ['company', 'price', 'change'],
data: [
    ['3m Co',                               71.72, 0.02],
    ['Alcoa Inc',                           29.01, 0.42],
    ['Altria Group Inc',                    83.81, 0.28],
    ['American Express Company',            52.55, 0.01],
    ['American International Group, Inc.',  64.13, 0.31],
    ['AT&T Inc.',                           31.61, -0.48]
]});
var grid = Ext.create('Ext.grid.Panel', {
title: 'Array Grid',
store: store,
columns: [
    {text: 'Company', flex: 1, dataIndex: 'company'},
    {text: 'Price', width: 75, dataIndex: 'price'},
    {text: 'Change', width: 75, dataIndex: 'change'}
],
height: 200,
width: 400,
renderTo: Ext.getBody()});
var view = grid.getView();var tip = Ext.create('Ext.tip.ToolTip', {
// The overall target element.
target: view.el,
// Each grid row causes its own separate show and hide.
delegate: view.itemSelector,
// Moving within the row should not hide the tip.
trackMouse: true,
// Render immediately so that tip.body can be referenced prior to the first show.
renderTo: Ext.getBody(),
listeners: {
    // Change content dynamically depending on which element triggered the show.
    beforeshow: function updateTipBody(tip) {
        tip.update('Over company "' + view.getRecord(tip.triggerElement).get('company') + '"');
    }
}});

Это доступно в официальных документах extjs: подсказка

...