这让我快发疯了,我受够了,不能再花一整天在这上面了。
我试图在组件中手动设置一个控制值('dept'),但它不起作用——甚至新值也会正确地记录到控制台中。
以下是FormBuilder实例:
initForm() {
this.form = this.fb.group({
'name': ['', Validators.required],
'dept': ['', Validators.required],
'description': ['', Validators.required],
});
}
这是接收所选部门的事件处理程序:
deptSelected(selected: { id: string; text: string }) {
console.log(selected) // Shows proper selection!
// This is how I am trying to set the value
this.form.controls['dept'].value = selected.id;
}
现在,当表单提交后,我将退出此操作。表单
该字段仍然为空!我见过其他ppl使用updateValue()
,但这是测试版。1,我不认为这是调用控件的有效方法。
我还尝试调用updateValueAndValality()
,但没有成功:(。
我只会在表单元素上使用ngControl="Dept"
,就像我对表单的其余部分所做的那样,但它是一个自定义指令/组件。
<ng-select
[data]="dept"
[multiple]="false"
[items]="depts"
(selected)="deptSelected($event)" <!-- This is how the value gets to me -->
[placeholder]="'No Dept Selected'"></ng-select>
Angular 2 final更新了API。他们为此增加了许多方法。
要从控制器更新表单控件,请执行以下操作:
this.form.controls['dept'].setValue(selected.id);
this.form.controls['dept'].patchValue(selected.id);
无需重置错误
参考文献
https://angular.io/docs/ts/latest/api/forms/index/FormControl-class.html
https://toddmotto.com/angular-2-form-controls-patch-value-set-value
在Angular 2 Final(RC5)中,有用于更新表单值的新API。patchValue()
API方法支持部分表单更新,我们只需要指定一些字段:
this.form.patchValue({id: selected.id})
还有一个setValue()
API方法需要一个包含所有表单字段的对象。如果缺少一个字段,我们将得到一个错误。
更新日期:2017年3月19日
this.form.controls['dept'].setValue(selected.id);
旧:
目前,我们被迫进行类型转换:
(<Control>this.form.controls['dept']).updateValue(selected.id)
不太优雅,我同意。希望在将来的版本中得到改进。
我有一个表单,其中有些字段不是模型的字段。在发送到渲染之前,我想在我的视图中填充它们.. 我的表格: 我的视图代码: 谢啦
我有一个单窗口JavaFX应用程序,它是从JavaFX教程中创建的。 我正在通过以下功能设置新窗口内容: 但是我想从这个fxml文件中选择一个默认激活的文本字段。如何做到这一点?我尝试在控制器的初始化方法中调用requestFocus方法,但没有成功。我在TextField类和AnchorPane类中都没有找到任何合适的属性(AnchorPane是fxml控件树的根元素)。
FormBuilder 是一个 PHP 类用来创建各种丰富的 HTML 表单。通过 jQuery/jQuery UI 支持 Ajax,支持 Google 地图、验证码,以及使用TinyMCE和CKEditor的可视化编辑器。
问题内容: 我想将用户持久保存到数据库中,并使用IDENTITY生成类型创建的User的ID(PK)的当前方案。例如 但我想在以下情况下进行操作:1)用户明确设置。2)如果未设置用户,则将自动分配它,并且它必须是唯一的。 请建议我一些可用的选项,以便我解决。谢谢。 问题答案: 您可以为此目的定义您的自定义ID生成器,如本SOAnswer中指出的那样 它的代码如下所示: 和
问题内容: 我已经使用Xcode 11,Beta 5为iOS 13手动设置了根视图控制器。在部署信息中删除了对main的引用,包括在info.plist中删除了对main的引用,而我从未发现自己必须在iOS 13之前做。窗口在SceneDelegate中完成,嵌套在willConnectTo函数中。通常,如果我错过了某个步骤,该应用程序将崩溃。现在,我得到了一个空白的黑屏,而不是看到我的视图控制器