Вот ответ: -
Важное примечание- Мы не используем Drupal8 в поле встроенного необходимого флажка в настройках поля, потому что здесь мы обсуждаем вторичную форму, которая скрытапо умолчанию и отображается при некоторых условиях.
Итак,
В Drupal8, текстовые поля могут быть сделаны обязательными с использованием подхода JQuery, но поля "select" и "upload file" не ладятс jQuery.
Вот одно из решений: -
Вы можете заставить их проверять проверку в вашей функции "Проверка"
Вотмой код: -
в именах полей кода для размещения с именами полей. Я использовал случайные значения, например
public static function node_content_type_xyz_form_validate(array $form, FormStateInterface $form_state){
$primary = $form_state->getValue('field_name')[0]['value'];
$reset_text_fields=[];
//in my case this was the condition**
if($primary < 4){
$form_state->setValue('field_secondary_waste_type',$reset_text_fields);
}
// here is the validation**
else{
$empty=[];
$value_of_secondary_waste_type = $form_state->getValue('field_secondary_waste_type')[0]['value'];
if($value_of_secondary_waste_type == null){
$form_state->setErrorByName('field_secondary_waste_type', t('Secondary Waste Type is required.'));
}
if(($value_of_secondary_waste_type == 1) || ($value_of_secondary_waste_type == 2) || ($value_of_secondary_waste_type == 3 ) || ($value_of_secondary_waste_type == 5)){
$value_of_pcpg = $form_state->getValue('field_secondary_pcpg_facility_ty')[0]['value'];
if($value_of_pcpg == null) {
$form_state->setErrorByName('field_secondary_pcpg_facility_ty', t('Secondary Facility Type is required.'));
}
}
if($value_of_secondary_waste_type == 0){
$value_of_residual = $form_state->getValue('field_secondary_residual_facilit')[0]['value'];
if($value_of_residual == null ){
$form_state->setErrorByName('field_secondary_residual_facilit', t('Secondary Facility Type is required.'));
}
}
if($value_of_secondary_waste_type == 4){
$metal = $form_state->getValue('field_secondary_metal_facility_t')[0]['value'];
if($metal == null){
$form_state->setErrorByName('field_secondary_metal_facility_t', t('Secondary Facility Type is required.'));
}
}
$variable= $form_state->getValue('field_secondary_permit_pdf')[0]['fids'];
if($value_of_secondary_upload_permit == $empty){
$form_state->setErrorByName('field_xyz', t('Secondary Permit PDF is required.'));
}
}
}
Спасибо Kushal Agrawal kushalagrawal.1996 @gmail.com