当我选择所有下拉元素时,ng-model值不会更新

时间:2018-10-15 09:12:46

标签: javascript html angular multi-select angular2-form-validation

我的问题是使用 ngModel进行验证时。通过SelectAll选项选择值时,它在 edge 浏览器中不起作用。

  

无法正常工作的示例代码,在这里我没有使用 [[值]]

<ejs-multiselect id='multiselect-checkbox' #checkbox [dataSource]='countries' name='formRequired' [placeholder]='checkWaterMark' (change)='onMultiChange(projectInfoTypeId, projectInfoText)' [fields]='checkFields'
                [mode]='mode' [popupHeight]='popHeight' [showDropDownIcon]='true' showSelectAll='true' [(ngModel)]='ProjectTypeId' #projectInfoTypeId='ngModel' [filterBarPlaceholder]='filterPlaceholder' required ></ejs-multiselect>
        </div>
        <div *ngIf="projectInfoTypeId.errors?.required" class="validationText">
                                country is required.
                            </div>

我已经验证了此问题,并且怀疑值更改 ngModel 没有不反映。我已经将相同的属性绑定到value和ngModel 。此问题已解决。

  

有效的示例代码,在这里我使用了 [(值)]

<ejs-multiselect id='multiselect-checkbox' #checkbox [dataSource]='countries' name='formRequired' [placeholder]='checkWaterMark' (change)='onMultiChange(projectInfoTypeId, projectInfoText)' [fields]='checkFields'
                [mode]='mode' [popupHeight]='popHeight' [showDropDownIcon]='true' showSelectAll='true' [(value)]='ProjectTypeId' [(ngModel)]='ProjectTypeId' #projectInfoTypeId='ngModel' [filterBarPlaceholder]='filterPlaceholder' required ></ejs-multiselect>
        </div>
        <div *ngIf="projectInfoTypeId.errors?.required" class="validationText">
                                country is required.
                            </div>

请提供任何想法。我想知道,这是不是一种行为

  

workig示例链接:   sample 1

     

无效的示例链接:   sample 2

     

错误:

如果全选,则会发生以下错误:

错误TypeError:无法获取未定义或空引用的属性'preventDefault'

0 个答案:

没有答案