You’re reading the v3 legacy docs. The current release is Inertia Table v4. Go to v4 documentation →
Skip to content

Row Data Attributes ​

Overview ​

Data Attributes are great for passing extra information to DOM elements. This can be useful when you need to target a specific DOM element, for example, to style a particular row in a table.

Usage ​

You can use the dataAttributesForModel method on your Table class to provide data attributes for each row. This method accepts the Eloquent Model instance and the transformed data as arguments and should return an array. You don't have to prefix the keys with data-.

php
use Illuminate\Support\Str;

class Users extends Table
{
    public function dataAttributesForModel(Model $model, array $data): array
    {
        return [
            'user-type' => $model->is_admin ? 'admin' : 'user',
        ];
    }
}

The data attributes will be added to the row element in the HTML output.

html
<tr data-user-type="admin">
    <!-- data cells -->
</tr>

Targetting Rows with CSS ​

You can target rows with specific data attributes using CSS. For example, to style rows with the data-user-type="admin" attribute:

css
tr[data-user-type="admin"] {
    /* ... */
}

Data Attributes on Actions and Exports ​

Actions and Exports also support data attributes. You can use the dataAttributes method on the Action or Export class to provide data attributes for each row. Check the respective documentation for more information.