Hel*_*tad 2 javascript aurelia
我有一个表customerlement与以下tbody规范:
<tbody class="ui-datatable-data ui-widget-content">
<tr ref="rowElement" repeat.for="rowData of dataToRender" class="ui-widget-content ${$odd ? 'ui-datatable-odd':'ui-datatable-even'} ${(selectionMode && rowElement == hoveredRow) ? 'ui-state-hover':''}" mouseenter.trigger="hoveredRow = $event.target" mouseleave.trigger="hoveredRow = null" click.trigger="onRowClick($event, rowData,$index)">
<td repeat.for="col of columns" attr.style.bind="col.style" attr.class.bind="col.styleClass" class="${col.editable ? 'ui-editable-column':''}" click.trigger="switchCellToEditMode($event.target)">
<span class="ui-column-title" if.bind="responsive">${col.header}</span>
<span class="ui-cell-data" click.trigger="switchCellToEditMode($event.target)">${rowData[col.field]}</span>
<input type="text" class="ui-cell-editor ui-state-highlight" if.bind="col.editable" value.bind="rowData[col.field]" blur.trigger="switchCellToViewMode($event.target)" keydown.trigger="onCellEditorKeydown($event)" />
</td>
</tr>
</tbody>
Run Code Online (Sandbox Code Playgroud)
而keydown触发器:
onCellEditorKeydown(event) {
if (this.editable) {
if (event.keyCode == 13) {
this.switchCellToViewMode(event.target);
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是keydown.trigger使输入无法写入.通过移除触发器,它正常工作.
这里有什么我想念的吗?
br hw
true
从keydown事件处理程序返回,因此不会取消浏览器的默认行为.
这是一个例子:https://gist.run?id = d9acea04776f6b20000c
app.html
<template>
<input keydown.trigger="handleKeydown($event)">
</template>
Run Code Online (Sandbox Code Playgroud)
app.js
export class App {
handleKeydown(event) {
// return true so the default behavior isn't canceled.
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
904 次 |
最近记录: |