Как получить доступ к элементам JS-Object с помощью getSelectedRecords () - функция предоставлена ​​Syncfusion - PullRequest
0 голосов
/ 19 февраля 2019

Я новичок в этой платформе.Я ценю любой ответ, и если я ошибаюсь или нарушаю какие-либо правила этой платформы, не стесняйтесь указывать на это.

Я работаю с Angular-Framework (версия 7.) и синхронизируюсь спостроил веб-приложение.Я получаю данные через API, и с помощью функций, предоставляемых Syncfusion, я могу получить доступ к индексу строки (таблицы) и ее записей.

Итак, я подумал, можно ли получить элемент (его значение)JS-Object с помощью функции getSelectedRecords, предоставляемой Syncfusion.

К сожалению, я не нахожусь в окружающей среде, где я кодирую, но я спрашиваю себя, как это сделать, если это действительно возможно.

Итак, я искал пример кода официальной документации Syncfusion, который выглядит следующим образом:

@Component({
    selector: 'app-container',
    template: <ejs-grid #grid [dataSource]='data' height='315px' 
(rowSelected)='rowSelected($event)'>
                <e-columns>
                    <e-column field='OrderID' headerText='Order ID' 
textAlign='Right' width=120></e-column>
                    <e-column field='CustomerID' headerText='Customer ID' 
width=150></e-column>
                    <e-column field='ShipCity' headerText='Ship City' 
width=150></e-column>
                    <e-column field='ShipName' headerText='Ship Name' 
width=150></e-column>
                </e-columns>
               </ejs-grid>
})
export class AppComponent implements OnInit {

public data: Object[];

@ViewChild('grid')
public grid: GridComponent;

ngOnInit(): void {
    this.data = data;
}

rowSelected(args: RowSelectEventArgs) {
    let selectedrowindex: number[] = this.grid.getSelectedRowIndexes();  // Get the selected row indexes.
    alert(selectedrowindex); // To alert the selected row indexes.
    let selectedrecords: Object[] = this.grid.getSelectedRecords();  // Get the selected records.
}
} 

В последней строке функции rowSelected вы видите, что Записи изОбъект хранится в типе Object [].Используя функцию console.log, я увидел, что записи также хранятся в объекте, и объекты доступны.Вместо использования getSelectedRecords () и сохранения его в объекте, могу ли я расширить функцию для доступа к объекту и получить элемент или, скорее, его значение и сохранить его в переменной с типом элемента?

Добавление функции с помощью «.»и напишите имя элемента в стороне this.grid.getSelectedRecords().elementsname не будет работать, но есть ли что-то похожее?

Я надеюсь, что я четко объяснил свою проблему.Если что-то неясно, пожалуйста, спросите.

1 Ответ

0 голосов
/ 26 февраля 2019

Вы можете получить выбранные элементы строки с помощью свойства this.grid.selectionModule.selectedRecords, а конкретное значение выбранных записей - с помощью индекса выбранной строки, как показано ниже.

rowSelected(args:rowSelectedEventArgs){      
      let selectedRowIndex: number[] = this.grid.getSelectedRowIndexes();
      let selectedRowEle: number = (this.grid.getSelectedRecords()[0] as any).OrderID // Get the selected record value using "getSelectedRecords()" 
      let selectedRowElement: Element[] = this.grid.selectionModule.selectedRecords;    // Get the Selected record row element collection.  
    }

См. образец для получения дополнительной информации.

Пожалуйста, свяжитесь с нами, если вам нужна дополнительная помощь.

...