我有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
事件方法?
答案 0 :(得分:18)
您在选择选项中缺少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);
}
}
我不确定你要将select绑定到什么,但基本上你想要创建一个可以绑定所选值的变量。因此,所选值将设置为changedValue
的变量。我喜欢使用model.bind
因为我可以绑定true / false值而不是所有字符串。
如果需要,我已经为你使用了一个运行的要点: https://gist.run/?id=87f6897928feb504dad638d439caf92f