Saya mencoba menambahkan jenis bidang "angka" ke formulir menggunakan FAPI:
$form['phone_number']['areacode'] = array(
'#type' => 'textfield',
'#title' => '---',
'#width' => '30%',
'#align' => 'center',
'#required' => true,
'#maxlength' => 3
);
Saya mengubah TYPE menjadi "angka" dan bidang tidak dihasilkan sama sekali. Modul angka diaktifkan. Saya telah menerapkan fungsi tema berikut:
MYTHEME_form_element
MYTHEME_textfield
MYTHEME_container
Apa yang mungkin ada di balik bidang ini yang tidak muncul ketika saya menggunakan #type = number
atau #type = number_integer
, dll?
Ini mungkin ada hubungannya dengan itu:
Membuat bidang Angka (bilangan bulat dan desimal) secara manual dalam kode untuk formulir kustom
Namun saya benar-benar ingin jenis untuk menjadikan "angka" dalam HTML sehingga ponsel pintar menunjukkan dialer angka
Ada ide?
<input type="number" type="text">
Anda dapat menginstal dan menggunakan Elemen modul untuk itu.
sumber
#type="numberfield"
adalah cara yang benar untuk menyesuaikan bidang saat menggunakan modul ini.'#type' => 'number'
(tidak'numberfield'
) dalam array render.Saya agak terlambat ke pesta. Masalahnya adalah bahwa theme_textfield (D7
includes/form.inc
:, lines 3924ff) kode-keras$element['#attributes']['type'] = 'text';
.Anda dapat membungkus panggilan tersebut dalam
if (!isset($element['#attributes']['type'])) { ... }
atau menunggu tambalan https://www.drupal.org/node/2545318 untuk diterapkan.sumber
ini kode kamu di bawah ini ..
tolong beri tahu saya apa itu ['nomor telepon'], itu adalah wadah atau tidak atau itu ada di formulir Anda atau tidak dan jika Anda ingin membuat bidang khusus di formulir Anda, maka Anda harus menggunakan hook_form_alter hook_form_alter
Suka
semoga ini membantu kamu ..
sumber
Saya tidak melihatnya bekerja dengan nilai yang tidak valid untuk bidang #type , namun Anda dapat melakukan sesuatu seperti itu:
Elemen bentuk:
Dan mengimplementasikan theme_textfield
sumber