Coffeescript 一个简单的SlickGrid下拉列表选择列表编辑器
我想要使用标准html选择列表在slickgrid中编辑值的最简单解决方案 stackoverflow上有很多答案,所有这些都告诉您实现自己的Coffeescript 一个简单的SlickGrid下拉列表选择列表编辑器,coffeescript,slickgrid,Coffeescript,Slickgrid,我想要使用标准html选择列表在slickgrid中编辑值的最简单解决方案 stackoverflow上有很多答案,所有这些都告诉您实现自己的SelectCellEditor。以下是一些例子: 但这些示例都是javascript,因此有点冗长 所以我要用一个精简的咖啡脚本来回答我自己的问题。它适用于简单的选择列表,并且在您想要喜欢的时候很容易扩展。CoffeeScript中的一个简单的SlickGrid SelectCellEditor class SelectCellEditor
SelectCellEditor
。以下是一些例子:
所以我要用一个精简的咖啡脚本来回答我自己的问题。它适用于简单的选择列表,并且在您想要喜欢的时候很容易扩展。CoffeeScript中的一个简单的SlickGrid SelectCellEditor
class SelectCellEditor
last=undefined
constructor:(@args) ->
options = @args.column.options.split(",")
@select=$("<select/>")
.append("<option value=\"#{o}\">#{o}</option>" for o in options)
.appendTo(@args.container)
.focus()
loadValue: (item) ->
last = item[@args.column.field]
@select.val last
serializeValue : -> @select.val()
destroy : -> @select.remove()
focus : -> @select.focus()
isValueChanged : -> @select.val() isnt last
validate : -> {valid: true, msg: null}
applyValue : (item, state) -> item[@args.column.field] = state
我认为,这实际上是一个很好的提问和回答你自己问题的案例。为什么以前没人捡到它?
columns = [
// Other slickgrid columns ...
{
id : "colour",
name : "Colour",
field : "Colour",
options : "Red,Green,Blue",
editor : SelectCellEditor
}
]