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 回答