0

バージョン 1.5 の AngularJS の angular-ui からのツリー コントロールに問題があります。ツリーコントロールには、 「Enter」またはマウスクリックを検出し、ツリーコントロールから入力にオプションを送信するon-selectionと呼ばれるディレクティブがあります。「スペース」キーにも同じ動作をさせたいのですが、ツリーコントロールに追加する方法がわかりません。また、通常の ng-keypress は機能しません。angular-ui ファイルを変更できません。誰でもその問題の解決策を知っていますか?

編集:コード:

template: '<div class="autocomplete"><treecontrol class="tree-light" tree-model="source" options="ctrl.treeOptions" filter-expression="filter" expanded-nodes="expandedNodes" on-selection="nodeSelect(node)" ng-keypress="spaceClicked($event)">' +
          '<span><i class="enms enms-{{node.type}}"></i>{{node.name | translate}}</span></treecontrol></div>',
link: function(scope, elem, attrs, ctrl) {
    this.ctrl = ctrl;

    scope.nodeSelect = function (node) {
    // Element selektieren
    scope.onSelect()(node);
};

scope.spaceClicked = function (event) {
     console.log("Clicked: ");
     console.log(event.keyCode);
};

実際の例: 画面 1: ここに画像の説明を入力

画面 2: ここに画像の説明を入力

ユーザーが入力を開始すると、ツリーコントロールが表示され、一致するオプションが表示されます (画面 1)。ここで、ユーザーはオプションをマウスでクリックするか、「Enter」ボタンをクリックしてオプションを入力に追加する必要があります (画面 2)。「スペース」キーでも同じ動作をしたいです。私の問題が明確になったことを願っています:)

4

0 に答える 0