1

多くの質問がありますがfocus()、私の問題に対する有効な解決策が見つかりませんでした。

いくつかの列で Slick Grid を使用しています。

{id: "Something", name: "Something", field: "Something", width: 200, editor: Slick.Editors.Text }

var ResourcesGridOptions = {
        editable: true,
        enableCellNavigation: true,        
        enableColumnReorder: false,
        autoEdit: false
    };   

新しい行を作成するボタンを実装しました。ここで、入力テキストを自動的にフォーカスしたいと思います。この時点で、「編集」モードをオンに設定できますが、focus()機能しません。

誰かが私を助けてくれるかもしれません。

私が使用しているChrome Javascriptコンソールで:

$($('.slick-cell:eq(2)').dblclick().find('input')[0]).select().val("").focus()

コンソールは次のように返します。

[<input type="text" class="editor-text" value="">]

更新 1

この入力フィールドに「ID」を追加して、直接フォーカスしようとしましたが、うまくいきませんでした。

$($('.slick-cell:eq(2)').dblclick().find('input')[0]).attr('id', 'Something')
$('#Something').focus()

戻り値:[<input type="text" class="editor-text" value="" id="Something">]

4

1 に答える 1

2

追加ボタンの Click イベントで次の関数を呼び出してみてください。

function AddNewRow() {
var dataLength = dataView.getLength();
//dataView.addItem({ "Id": -1 });
//dataView.refresh();
grid.gotoCell(dataLength, 0, true);
}
于 2013-07-19T07:15:41.260 に答える