<select [(ngModel)]="selectedDevice" (change)="onChange($event)">
<option *ngFor="#i of devices">{{i}}</option>
</select>
onChange($event) {
console.log(this.selectedDevice);
// I want to do something here with the new selectedDevice, but what I
// get here is always the last selection, not the one I just selected.
}
如果不需要双向数据绑定:
<select (change)="onChange($event.target.value)">
<option *ngFor="let i of devices">{{i}}</option>
</select>
onChange(deviceValue) {
console.log(deviceValue);
}
对于双向数据绑定,请将事件绑定和属性绑定分开:
<select [ngModel]="selectedDevice" (ngModelChange)="onChange($event)" name="sel2">
<option [value]="i" *ngFor="let i of devices">{{i}}</option>
</select>
export class AppComponent {
devices = 'one two three'.split(' ');
selectedDevice = 'two';
onChange(newValue) {
console.log(newValue);
this.selectedDevice = newValue;
// ... do other stuff here ...
}
如果devices
是对象数组,则绑定到ngvalue
而不是value
:
<select [ngModel]="selectedDeviceObj" (ngModelChange)="onChangeObj($event)" name="sel3">
<option [ngValue]="i" *ngFor="let i of deviceObjects">{{i.name}}</option>
</select>
{{selectedDeviceObj | json}}
export class AppComponent {
deviceObjects = [{name: 1}, {name: 2}, {name: 3}];
selectedDeviceObj = this.deviceObjects[1];
onChangeObj(newObj) {
console.log(newObj);
this.selectedDeviceObj = newObj;
// ... do other stuff here ...
}
}
以下代码起作用: 如何将第二行重构为: 您对所选的******选项使用了什么?
此组件来自https://github.com/skratchdot/react-bootstrap-multiselect handleChange()函数中应该写什么?
问题内容: 我将selenium1的代码转换为selenium2,找不到在下拉菜单中选择标签或获得下拉菜单的选定值的简便方法。您知道在Selenium 2中如何做吗? 这是两个在Selenium 1中起作用但不在2中起作用的语句: 问题答案: 查看硒文档中有关使用webdriver 填写表单的部分以及Select类的javadoc 。 要基于标签选择一个选项: 要获得第一个选定的值:
我试图弄清楚如何在显示时选择一个选项,使用旧的javascript风格代码或其他语言,例如: 在angularjs中尝试这样做时,我最终得到了类似下面所示的东西。 这是代码: 如何才能正确地执行此操作?
问题内容: 我有一个与此类似的布局: 并想用一个jQuery选择器选择子内的点击。 要获得,我有以下选择器: 如何使用选择器让孩子? 问题答案: jQuery构造函数接受名为的第二个参数,该参数可用于覆盖选择的上下文。 就像这样使用: 如果您想要的img 仅是clicked元素的直接后代,则还可以使用:
我想计算选择属性中的选项,但我的测试失败了,这是我的规范: 它给了我错误: C:\wamp\www\First-angular-App