Saya memiliki modul khusus, dan saya mencoba untuk menyembunyikan grup CCK menggunakan "#states" ketika item tertentu dipilih dalam daftar pilih drop-down.
Saya telah mencoba menggunakan status dari dalam hook_form_alter (), seperti:
$form['group_mygroup']['#states']['invisible'] = array(
':input[name="field_trigger[' . LANGUAGE_NONE. ']"]' => array( 'value' => 'hide' ),
);
Ini sepertinya tidak melakukan apa-apa.
Saya telah melihat perubahan bobot modul saya sesuai berbagai situs seperti http://proofgroup.com/blog/2008/dec/modifying_cck_fieldgroups_hook_form_alter .
tapi tetap tidak berhasil. Saya bisa menyembunyikan semua elemen formulir di dalam fieldgroup menggunakan status tetapi bukan grup bidang itu sendiri. Adakah yang punya ide?
7
javascript
thearearson
sumber
sumber
Jawaban:
Saya menggunakan kait ini untuk menyembunyikan grup bidang saya. Itu hanya terlihat jika kotak centang
field_myfield
dicentang.Untuk mengeksplorasi
$element
variabel dalam pengait ini saya gunakanbukannya
dpm()
.Semoga ini membantu :)
sumber
Fieldgroup tidak didefinisikan di root
$form
. Sepertinya Anda sebaiknya tidak menggunakannya$form['group_mygroup']
, tetapi$form['#fieldgroups']['group_mygroup']
.sumber
Anda dapat melihat pada modul contoh untuk melihat bagaimana mereka menyembunyikan fieldset . Berdasarkan itu saya pikir kode Anda harus:
sumber