0

Liferay 6.2 を使用しており、コンポーネントから削除された要素の値を取得したいと考えていTextboxlistます。hiddenInput要素に値のリストを格納し、そのリストを に表示しTextboxlistます。要素を削除するときに、非表示の入力要素に格納されている値を更新したいと考えています。しかし、削除された要素を取得する方法がわかりません。

AUI().ready('aui-textboxlist-deprecated', function (A) {

    var source = A.one('#hiddenInput').val().split(',');

    var tagslist = new A.TextboxList({
        contentBox: '#demo',
        dataSource: source,
        matchKey: 'name',
        schema: {
            resultFields: ['key', 'name']
        },
        schemaType: 'json',
        typeAhead: true,
        width: 500
    }).render();

    var values = A.one('#hiddenInput').val().split(',');
    A.each(values, tagslist.add, tagslist);

    var updateHiddenInput = function (event) {

        //how to get the removed element?

    }

    tagslist.entries.after('remove', updateHiddenInput);
});

これを達成する方法は?

4

1 に答える 1

0

@jbalsasがコメントで言ったように:

ラベルだけが必要な場合は、 を使用して取得できますevent.attrName。要素を操作する必要がある場合は、 に渡されevent.item.entryます。

したがって、次のようにできるはずです。

var updateHiddenInput = function (event) {
    var hiddenInput = A.one('#hiddenInput');
    hiddenInput.val(hiddenInput.val() + ',' + event.item.entry); // or event.attrName
}
于 2014-12-09T04:43:43.833 に答える