1
我真的很掙扎,我的佈局進入Yii2。爲了儘可能地接近最新的藝術,我讀了關於造型ActiveField
和ActiveForm
,這有點有用,但不是100%。也許你看到了什麼是錯的。Yii2中的樣式表單(ActiveField/ActiveForm)
讓我與我的HTML,我想有開始的:
// normal state without any validations
<p>
<label for="signup_name">Name, Surname:<span class="required">*</span></label>
<input type="text" name="signup_name" id="signup_name" value="" />
</p>
// input field after validation fails (ajax + reload)
<p>
<label for="signup_email">E-mail:<span class="required">*</span></label>
<input class="error-input" type="text" name="signup_email" id="signup_email" value="" />
<span class="error-msg">E-mail must be filled !</span>
</p>
這是當前的狀態,在這種佈局是:
<p>
<label class="control-label" for="signupform-username">Username</label>
<input id="signupform-username" class="form-control" type="text" name="SignupForm[username]">
<span class="error-msg">Username may not be empty</span>
</p>
這是我的PHP/Yii2部分
<?php
$form = ActiveForm::begin([
'id' => 'form-signup',
'fieldConfig' => [
'template' => "<p>{label}{input}{error}</p>",
'errorOptions' => [
'tag' => 'span',
'class' => 'error-msg',
],
],
]);
echo $form->field($model, 'username', [
'inputTemplate' => '{input}',
])->textInput(['autofocus' => false])
?>
個
的問題:
- 的
<span class="error-msg">
總是被渲染,即使沒有錯誤呢。澄清:跨度沒有內容,呈現如下:<span class="error-msg"></span>
(我希望它在那裏,如果有實際的錯誤,而不是作爲一個佔位符之前 - 我不知道如何應用錯誤-Class的輸入,其作品爲
ajax
-validation,還有沒有JS-方式。
任何幫助表示讚賞,感謝