在渲染数组中为元素设置ID值,你有两种方式:“#id”和“#attributes”,它们有什么不同吗?关于本篇,你也可以理解成是一个AJAX API的重要知识点
"#id"方式:
$form['preview'] = [
'#type' => 'button',
'#value' => 'yunke',
'#id' => 'yunke-click-calculate-price',
'#ajax' => [
'callback' => 'ajaxRefresh',
],
];
属性方式:
$form['preview'] = [
'#type' => 'button',
'#value' => 'yunke',
'#attributes' => [
'id' => 'yunke-click-calculate-price',
],
'#ajax' => [
'callback' => 'ajaxRefresh',
'disable-refocus' => TRUE,
],
];
以上两种方式都能成功设置元素ID,但其内部处理过程是不一样的,属性方式优先级更高
虽然都能成功设置ID,但在有些情况下,它们有巨大影响,比如上列中,在使用AJAX时,你只能使用“#id”方式,否则AJAX设置将失效,也由于属性方式优先级更高,因此你不能再采用属性方式
关于本篇,你也可以理解成是一个AJAX API的重要知识点
添加新评论