ฉันต้องการปิดการใช้งานฟิลด์ ก ถ้าสนาม ข ถูกปิดใช้งานด้วย
ที่จริงสนามปัจจุบันของฉัน ก มี #states ต่อไปนี้ (แก้ไขโดยใช้ hook_alter_form) เพื่อปิดการใช้งานถ้าฟิลด์ ข หรือสนาม ค ว่างเปล่า:
/**
* ใช้ hook_form_alter()
*/
ฟังก์ชัน my_module_form_alter(&$form, $form_state, $form_id) {
$form['field_a']['#states'] = [
'ปิดการใช้งาน' => [
[':input[name="field_b[0][value][date]"]' => ['empty' => TRUE]],
'หรือ',
[':input[name="field_c[0][value][date]"]' => ['empty' => TRUE]],
]
];
}
และทำงานได้อย่างสมบูรณ์ แต่ฉันต้องเพิ่มเงื่อนไขที่กล่าวถึงก่อนหน้านี้
ฉันพบสิ่งนี้ในเอกสารอย่างเป็นทางการ: https://www.drupal.org/docs/drupal-apis/form-api/conditional-form-fields
และฉันพยายามใช้บางอย่างเช่น 'อ่านอย่างเดียว' หรือ 'อ่านเขียน' แต่ไม่ได้ผล
ฉันสามารถประเมินคุณสมบัติเช่น '#disabled' จากที่นี่ได้หรือไม่ สิ่งที่คล้ายกับสิ่งนี้:
ฟังก์ชัน my_module_form_alter(&$form, $form_state, $form_id) {
$form['field_a']['#states'] = [
'ปิดการใช้งาน' => [
[':input[name="field_b[0][value][date]"]' => ['empty' => TRUE]],
'หรือ',
[':input[name="field_c[0][value][date]"]' => ['empty' => TRUE]],
'หรือ',
[':input[name="field_b"]' => ['#disabled' => TRUE]],
]
];
}