Saya memiliki bidang formulir admin (kotak teks),
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
));
Saya perlu menetapkan nilai default untuk bidang teks ini. Saya mencoba, pengaturan 'value' => '120',
di dalamnya. Tapi itu tidak berfungsi.
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
'value' => '120',
));
Bagaimana cara menetapkan nilai defalt di bidang itu?
setValues
..Jawaban:
Apakah bidang teks itu sendiri ditampilkan? Pengaturannya
'value' => '120'
sepertinya benar bagi saya.sumber
addValues()
metode digunakan setelah itu nilai-nilai tersebut sedang ditulis ulang.Masalah Anda adalah bahwa nilai-nilai yang Anda tetapkan dengan
addField()
metode kemudian ditimpa denganaddValues()
metode yang mencoba untuk mengatur nilai-nilai bidang formulir ketika formulir digunakan untuk mengedit entitas yang ada atau kesalahan terjadi selama pengiriman.Ini solusinya. Kemungkinan besar Anda mendapatkan nilai dengan metode yang dilindungi seperti ini:
Jadi di dalam
_prepareForm()
metode Anda, Anda ganti:dengan:
sumber
Terima kasih semuanya telah menghabiskan waktu dan usaha Anda yang berharga. Saya Menggunakan
setValues()
setelahaddfields
. Jadi nilai default sedang dihapus.Saya mengatasinya dengan memberikan
if
loop, seperti:120 adalah waktu default saya di sini.
sumber
Bagi siapa pun yang mencari dan bekerja di 1.9 dan memiliki di bawah ini
Anda dapat melakukan hal berikut tanpa harus mengedit data yang ada, tepat di atas tempat kode:
Tentu saja Anda dapat memeriksa isset dan semacamnya tetapi di sini adalah versi dasar dari pengaturan default.
sumber
Kamu bisa memakai
di mana
$data
adalah array bidang formulir.sumber
=> Anda dapat menambahkan atribut 'default' di bidang formulir. Seperti ini :
sumber