Bu problemi hiç görmedim. Bu varsayılan değer çalışmalıdır. Anahtar bir dize yapmak ve bir dize #default_value
olarak ayarlamak deneyin söyleyebilirim . #options
Dizi geçirilerek olabilir array_merge
, böylece anahtar tamsayıdır yeniden anahtarlama, bir yerde. Anahtarlar dize ise, bu olmamalıdır. Şu anda diziniz şu şekilde görünüyor:
$options = array(
0 => '0',
500 => '500',
1000 => '1000',
);
Ancak bu diziyi array_merge
geçirmek, bu tamsayı anahtarlarını sıralı olacak şekilde yeniden düzenleyebilir:
$options = array(
0 => '0',
1 => '500',
2 => '1000',
);
Bu durumda, 500
anahtar basitçe mevcut değildir. Bunun nedeni array_merge
, tamsayı anahtarlarını korumaktan hoşlanmamasıdır, ancak bunu önlemek için dizeleri kullanabilirsiniz. Yani, dizininizin daha çok benzemesi gerektiğini düşünüyorum:
$options = array(
'0' => '0',
'500' => '500',
'1000' => '1000',
);
Ardından aşağıdakileri ayarlayabilirsiniz #default_value
:
$form['price']['min']['#default_value'] = '500';
Aksi takdirde, default_value
geçersiz kılınabilecek başka bir yer var mı?