在PHP中,我将$data_attributes
数组放入一个HTML元素的data-additional-color-data attribute
中:
$data_attributes = [
312 => [
'name' => 'Black',
'hex' => '#000000',
'src' => 'http://sitename/files/pms_colors/Black.png'
],
313 => [
'name' => 'Metallic',
'hex' => '#D3D4DE',
'src' => 'http://sitename/files/pms_colors/Metallic.png'
]
];
$entity_form['field_pms_colors']['#attributes']['data-additional-color-data'] = Json::encode($data_attributes);
我在浏览器的DevTools中看到,标记中的元素如下所示:
<div class="field--name-field-pms-colors" data-additional-color-data="{"312":{"name":"Black","hex":"#000000","src":"http:\/\/sitename\/sites\/default\/files\/pms_colors\/Black.png"},"313":{"name":"Metallic Silver","hex":"#D3D4DE","src":"http:\/\/sitename\/sites\/default\/files\/pms_colors\/Metallic%20Silver.png"}}"></div>
这是一个元素,其属性必须与其一起:
312 => [
'name' => 'Black',
'hex' => '#000000',
'src' => 'http://sitename/files/pms_colors/Black.png'
],