Ich bin Ag-Grid verwenden und ich möchte eine Spalte hinzufügen, in der jede Zeile ein Dropdown hat, sehe ich, wie Sie ein Dropdown hinzufügen Spalte nur einmal, aber nicht für jede Zeile. Wie füge ich ein Dropdown-Menü in jeder Zeile einer Spalte für ag-Grid
Antwort
Wenn Sie auf Enterprise-Version sind, können Sie über das Kontextmenü, hier ist ein Ausschnitt aus einer App arbeite ich an
function getContextMenu(params){
var result;
switch (params.column.getId()) {
case 'Title':
result = [
'copy',
'toolPanel'
];
und in gridOptions
$scope.gridOptions = {
columnDefs: colDefs,
rowData: null, // I set data later
getContextMenuItems: getContextMenu
So in meinem Kontext Menü Funktion sehe ich, wo der Benutzer geklickt hat, wenn er auf die Zeile Titel ich nur die Kopie und Werkzeug Panel-Elemente, und dann kann ich weiterhin "Fällen" für meinen Schalter hinzufügen und unique Menüelemente für jede Zeile festlegen.
sehen, dieses Bild:
durch diesen bestimmten Link gehen und Dropdown Siehe ag-grid
in diesem Bild sehen füge ich DropDown und Codierung Teil dieser:>
$scope.gridOptions = {
columnDefs: [
{ headerName: "CompanyName", field: "CompanyName", editable: true, width: 130 },
{ headerName: 'ProductName', field: "ProductName", editable: true, width: 130 },
{ headerName: "ProjectID", field: "ProjectID", editable: true, width: 100 },
{ headerName: "Status", field: "Status", editable: true, width: 100 },
{ headerName: "Delete", field: "Delete", editable: true, editable: false, width: 100, cellRenderer: customEditorImageWQ },
{ headerName: "Update", field: "Update", editable: true, editable: false, width: 100, cellRenderer: customEditor },
{ headerName: "CompanyName", field: "CompanyName", width: 150, cellRenderer: CustomCombobox },
{ headerName: "TextBox", field: "SimpleTextbox", width: 180, cellRenderer: CustomTextbox },
{ headerName: "Checkbox", field: "SimpleCheck", width: 100, cellRenderer: CustomCheckbox }],
// { "headerName": "Support Weld", "field": "SupportWeld", "width": 110, "editable": false, "newValueHandler": "", "cellRenderer": "cellRendererCheckBox", "headerGroup": null, "ReadOnly": "false", "Enabled": "true", "DefaultValue": "", "Default": "" }],
rowData: null,
enableColResize: true,
enableSorting: true,
rowSelection: 'multiple',
angularCompileRows: true,
rowDeselection: true,
onRowClicked: RowClick,
enableFilter: true,
editable: true,
suppressRowClickSelection: true,
};
function **CustomCombobox**(params) {
var rowIndex = params.rowIndex;
var Column = params.eGridCell.attributes.colId;
var WeldGridData = $scope.gridOptions.rowData;
var editing = false;
//create select element using javascript
var eSelect = document.createElement("select");
eSelect.setAttribute('class', 'custom-select form-control');
eSelect.setAttribute('style', 'padding:0px');
eSelect.setAttribute('name', params.colDef.field);
eSelect.setAttribute('id', params.colDef.field + "_" + rowIndex);
//get the value of the select option
var value = params.data.CompanyID;
var param = {
obj: [{ "Key": "navangracreation", value: "NavCreations" }, { "Key": "Angra", value: "Angra" }]
}
//create the default option of the select element
var eOption = document.createElement("option");
eOption.text = "Select";
eOption.value = "";
eSelect.appendChild(eOption);
if (params.colDef.field == "CompanyName") {
CompanyName = $scope.CompanyList;
var companyid = params.data.CompanyID;
var eOptionVal = document.createElement("option");
//Statical set data in grid ComboBox
eOptionVal.text = "Angra";
eOptionVal.value = 1;
eSelect.appendChild(eOptionVal);
var eOption = document.createElement("option");
eOption.text = "Navcreation";
eOption.value = "2";
eSelect.appendChild(eOption);
}
return eSelect;
}
Es sieht aus wie Ihr Beitrag nicht ganz richtig geschrieben - könnten Sie es bearbeiten? –
- 1. Wie füge ich zu jeder Zeile in MySQL hinzu?
- 2. Erhalten Sie unterschiedliche Spalte in jeder Zeile
- 3. Wie füge ich eine Zeile mit einer TimeUUIDType-Spalte in Cassandra ein?
- 4. Wie füge ich Zeilen aus einer Datei an das Ende jeder Zeile einer anderen Datei an?
- 5. Wie füge ich ein Datum in eine DATETIME-Spalte ein?
- 6. Auswählen einer bestimmten Spalte in jeder Zeile aus Array
- 7. Wie füge ich (effizient) einen Vektor zu jeder Zeile einer Matrix in Julia hinzu?
- 8. Wie füge ich eine Zeile in einer bestimmten Zeile in mehreren Dateien unter Unix ein?
- 9. Wie importiere ich Textdateien in MS Excel mit jeder Zeile in einer separaten Spalte?
- 10. Wie finde ich den Maximalwert jeder Spalte in einer Tabelle?
- 11. Wie füge ich Werte desselben Artikels in einer Spalte hinzu?
- 12. Wie bekomme ich jede Spalte derselben Zeile in einer Zeile?
- 13. Wie drucke ich die Zeilennummer jeder Zeile in einer Zeichenfolge?
- 14. Wie füge ich eine neue Zeile für jeden Datensatz in einer Tabelle ein?
- 15. Wenn ich eine Tabelle mit nur einer Auto-Inkrement-Spalte habe, wie füge ich darin ein?
- 16. Wie füge ich eine Schaltfläche zu jeder Zeile einer Liste hinzu?
- 17. Wie füge ich eine Zeile in jede Datei ein?
- 18. Wie füge ich einer CSV-Datei eine neue Spalte hinzu?
- 19. Dropdownmenü in Android (2.3.3)
- 20. PHP fwrite() Wie füge ich eine neue Zeile nach einer bestimmten Zeile ein
- 21. Mit Python, wie Zeichenfolge in jeder Zeile einer CSV-Datei
- 22. Dropdownmenü in ASP.NET Core 1.0
- 23. Wie füge ich am Anfang jeder Zeile in einem ausgewählten Text mit autohotkey vier Leerzeichen hinzu?
- 24. R: eine andere Zeile in jeder Spalte effizient
- 25. Drucken Sie das erste Wort in jeder Spalte als Zeile.
- 26. Code zum Vergleichen jeder Zelle in einer Spalte mit jeder Zelle in einer anderen Spalte
- 27. Wie füge ich das Datum als String in eine einzelne Spalte für alle Zeilen ein?
- 28. Wie füge ich eine leere Zeile in die SQL-Tabelle ein?
- 29. Wie füge ich einer Spark RDD eine neue Spalte hinzu?
- 30. Wie füge ich diese Variable in dieselbe Zeile wie eine bestimmte Variable in einer TXT-Datei?
sind Sie auf Enterprise-Version? – klskl
http://stackoverflow.com/questions/39093485/how-to-add-conditional-template-on-ag-grid/39386577#39386577 –