ฟอร์มของ yii จะมีการแจ้งเตือนถ้าหากพบว่าข้อมูล input ที่เรากรอกใน form ไม่ถูกต้อง โดยจะทำกรอบอินพุต ป้าย label เป็นสีแดงและมีข้อความแสดงใน help-block เพิ่มขึ้นมา บางครั้งก็ทำให้ฟอร์มที่จัดไว้แน่นๆ ไม่ใช่แบบบรรทัดละกล่องข้อความตามแบบเว็บสมัยใหม่ เวลาเจอความผิดพลาด มันก็จะถีบตัวอื่นออกไป หรือดูอัดแน่นเกินไปจนดูไม่สวย
ก็สามารถเอาออกได้โดยใช้ form template เหมือนเดิม โดยยังสามารถทำ validation ได้ตามปกติ
วิธีการคือ
- เปิดไฟล์ _form.php ใน view เป้าหมาย
- เปลี่ยน
1
<?php
$form
= ActiveForm::begin([
'id'
=>
'login-form'
]); ?>
เป็น
123456<?php
$form
= ActiveForm::begin([
'fieldConfig'
=> [
'template'
=>
"{label}\n{input}\n{hint}"
],
'id'
=>
'login-form'
]); ?>
อย่าลืมเปลี่ยน id นะครับ
ถ้าใช้
1 | use yii\bootstrap\ActiveForm; |
ให้เปลี่ยน template เป็น
1 | 'template' => "{label}\n{beginWrapper}\n{input}\n{hint}\n{endWrapper}" |