0

フォームに選択ボックスがあり、検証を試みますが、入力タイプのテキストに対して以前と同じように動作しません。私は何を間違っていますか?

<div class="form-group">
                                <label class="control-label col-sm-3">Email<sup>*</sup></label>

                                        <div class="col-sm-6">

                                            <div class="input-icon-right">
                                                <i class="fa fa-envelope"></i>
                                                <input class="form-control" placeholder="example@example.com" type="email" ng-model="patient.email" name="email" required>
                                                <p ng-show="myForm.email.$error.required" style="color:red" ng-if="myForm.email.$touched">Add your email</p>

                                            </div>

                                        </div>
                            </div>

このコードはうまく機能し、フィールドが空のときにエラーメッセージを表示します。

選択ボックスを使用したこのコードは正しく機能しません。毎回空を選択せず​​に-選択-を選択します。別のシックがないときにエラーを表示するにはどうすればよいですか。

<div class="form-group">
                                <label class="col-sm-3 control-label">{{getWord('Gender')}}<sup>*</sup></label>
                                <div class="col-sm-6">
                                    <select ui-select2 ng-model="patient.gender"
                                            data-placeholder="Tên Cơ Sở"
                                            ng-change="changeGender()"
                                            style="width: 100%;" requied name="gender">
                                        <option value="">-{{getWord('Select')}}-</option>
                                        <option ng-repeat="item in genders" value="{{item.name}}">
                                            {{getWord(item.name)}}
                                        </option>
                                    </select>
                                    <p ng-show="myForm.gender.$error.required" style="color:red" ng-if="myForm.gender.$touched">Please choice gender</p>
                                </div>
                            </div>
4

3 に答える 3

0
<div class="form-group">
                            <label class="col-sm-3 control-label">{{getWord('Gender')}}<sup>*</sup></label>
                            <div class="col-sm-6">
                                <select ui-select2 ng-model="patient.gender"
                                        data-placeholder="Tên Cơ Sở"
                                        ng-change="changeGender()"
                                        style="width: 100%;" required name="gender">
                                    <option value="" disabled selected>-{{getWord('Select')}}-</option>
                                    <option ng-repeat="item in genders" value="{{item.name}}">
                                        {{getWord(item.name)}}
                                    </option>
                                </select>
                                <p style="color:red" ng-if="!myForm.gender.$pristine && myForm.gender.$error.required">Please choice gender</p>
                            </div>
                        </div>

これを試すことができますか?

于 2016-07-28T09:51:42.173 に答える
0

私の最終的なコード。しかし、私が欲しいものは良くありません

<div class="form-group" ng-class="{ 'has-error': myForm.gender.$pristine && myForm.gender.$invalid }">
                                <label class="col-sm-3 control-label">{{getWord('Gender')}}<sup>*</sup></label>
                                <div class="col-sm-6">
                                    <select ui-select2 ng-model="patient.gender" data-placeholder="Tên Cơ Sở" ng-change="changeGender(filterType)" style="width: 100%;" required name="gender">
                                        <option value="">-{{getWord('Select')}}-</option>
                                        <option ng-repeat="item in genders" value="{{item.name}}" >
                                            {{getWord(item.name)}}
                                        </option>
                                    </select>

                                     <p style="color:red" ng-if="myForm.gender.$pristine || myForm.gender.$error.required">Please choice gender</p>
                                </div>
                            </div>

スクリーンショット

于 2016-07-28T15:42:36.433 に答える
0

私が理解したところから。ユーザーが何も選択していないか、ドロップダウンに触れていない場合は、エラーを表示する必要があります。

この行を変更します。

<p ng-show="myForm.gender.$error.required" style="color:red" ng-if="myForm.gender.$touched">Please choice gender</p>

これに:

<p style="color:red" ng-if="myForm.gender.$pristine || myForm.gender.$error.required">Please choice gender</p>

また、スペルミスがあります。requiedに変更required

これも修正します。

<select ui-select2 ng-model="patient.gender"
        data-placeholder="Tên Cơ Sở"
        ng-change="changeGender()"
        style="width: 100%;" requied 
name="gender">

これに:

<select ui-select2 ng-model="patient.gender"
        ng-change="changeGender()"
        style="width: 100%;" required 
name="gender">

これが役立つことを願っています。

于 2016-07-28T12:28:25.987 に答える