Я ніколи не бачив цієї проблеми. Це значення за замовчуванням має працювати. Я б сказав, спробуйте зробити ключ рядком і встановити #default_value
як рядок. #options
Масив може бути пропускає через array_merge
де - небудь, таким чином , передрук цілого число клавіша. Якщо ключі - це рядки, то цього не повинно статися. Наразі ваш масив виглядає приблизно так:
$options = array(
0 => '0',
500 => '500',
1000 => '1000',
);
Але передача цього масиву array_merge
може реорганізувати цілі клавіші в послідовному порядку:
$options = array(
0 => '0',
1 => '500',
2 => '1000',
);
Якщо це станеться, 500
ключ просто не існує. Це тому, array_merge
що не любить зберігати цілі клавіші, але ви можете використовувати рядки, щоб запобігти цьому. Отже, я думаю, ваш масив повинен виглядати приблизно так:
$options = array(
'0' => '0',
'500' => '500',
'1000' => '1000',
);
Тоді ви можете встановити #default_value
:
$form['price']['min']['#default_value'] = '500';
В іншому випадку, чи є ще десь, де це default_value
може бути відмінено?