ActiveForm 驗證
你可以以活動形式啟用/禁用 ajax 和客戶端驗證。
$form = ActiveForm::begin([
'id' => 'signup-form',
'enableClientValidation' => true,
'enableAjaxValidation' => true,
'validationUrl' => Url::to('signup'),
]);
- 預設情況下,在 ActiveForm 中啟用
enableClientValidation
。如果你不需要表單中的客戶端驗證,我們可以通過賦值為 false 來禁用。 - 預設情況下,在 ActiveForm 中禁用
enableAjaxValidation
。如果你想啟用它,我們必須像上面那樣在 ActiveForm 中手動新增。 validationUrl
- 如果你希望將所有驗證編碼保留在此表單的單獨控制器操作中,我們可以使用validationUrl
配置 activeform。如果我們沒有設定它,它將採用表單的動作值。
以上兩個論點將影響整個形式。如果要僅檢查表單中特定欄位的 ajax 驗證,可以為該特定欄位新增 enableAjaxValidation
。它只適用於那個不是整個形式的領域。
例如,在登錄檔單中,你希望在使用者輸入表單時檢查使用者名稱已存在的驗證。你可以在這個領域使用這個 enableAjaxValidation
引數。
echo $form->field($model, 'username', ['enableAjaxValidation' => true]);