<zg-button> element is used both for core, internal buttons as well as offering a styled and flexible component for custom use.
Depending on how it is used, ZingGrid interprets how to render the button accordingly.
Style and modify internal buttons without changing their behavior. Add text labels or change the default icon. Anything you don't change is rendered normally.
Adding a text label
The simplest modification is to add a text label and have the rest of the button render normally. To do this, just add your text label inside the button:
Internal buttons always have an
[action] attribute, which tells ZingGrid how to interpret its functionality.
See all button actions.
Common Internal Buttons
Add Row, Edit Row, and Remove Row are the most common internal buttons.
All three appear when you make the grid editable:
<zg-caption> <h2>Add Row Button</h2> <zg-button action="createrecord" class="button">Add Row</zg-button> </zg-caption>
<zg-button action="editrecord" class="button button--edit"> Edit Record </zg-button>
<zg-button action="removerecord" class="button button--remove"> Remove Record </zg-button>
To modify the internal button's icon or checkbox, you must directly tell
the button which piece of it you are replacing. You do this by adding the appropriate
to your replacement.
Replacing the icon and checkbox
To replace the default icon, add your replacement
inside the button with the correct slot.
<zg-button action="createrecord"> <zg-icon name="close" slot="icon"></zg-icon> </zg-button> <zg-button action="editrecord"> <i class="fab fa-check" slot="checkbox"></i> </zg-button>
Use the same
<zg-button> for your own custom use. Since it doesn't have an
ZingGrid knows it is custom and will render your button 'as-is' – it will not render the internal icon,
checkbox, and label elements.
<zg-button> <img src="..." alt="..."/> <span>My Button</span> </zg-button>
Custom buttons also come with their own styling, which makes them look more like buttons.