2016-10-10 57 views
5

选择的选项值我一张有以下属性dropdown获取更改事件

<select value.bind="row.columns[$parent.$index].colSize" change.delegate="changeColumnSize($parent.$index, $index, row.columns[$parent.$index].colSize)"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
</select> 

但似乎我无法通过row.columns[$parent.$index].colSize作为参数。它始终是undefined

如何将下拉列表中的选定值直接传递给change事件方法?

回答

10

您在选择选项中缺少value.bind。我宁愿使用mode.bind而不是value.bind。尝试是这样的:

<template> 
    <select value.bind="changedValue" change.delegate="DropdownChanged(changedValue)"> 
     <option model.bind="1">1</option> 
     <option model.bind="2">2</option> 
     <option model.bind="3">3</option> 
     <option model.bind="4">4</option> 
    </select> 
</template> 



export class App { 
    changedValue; 


    DropdownChanged(changedVal) { 
    alert(changedVal); 
    } 

} 

我不知道你想绑定的选择是什么,但基本上你想创建一个可以选择的值绑定过的变量。所以,选定的值将被设置为changedValue的变量。我喜欢使用model.bind,因为我可以绑定true/false值而不是一切都是字符串。

我做了一个运行中的Gist,供您根据需要使用: https://gist.run/?id=87f6897928feb504dad638d439caf92f