1

私はYUI 3を使用して、誰かが「すべて選択」または「選択なし」をクリックしてから、選択ボックスですべてのアイテムを選択するか、すべての選択を解除します。これが私のコードです:

// This selects all
    Y.on('click',function (e) {
            selectBoxNode.get("options").each(function () {
               this.removeAttribute('selected');
               this.setAttribute('selected','selected');
            });
        }, selectAllNode
    );

// This selects none
   Y.on('click',function (e) {
            selectBoxNode.get("options").each(function () {
               this.setAttribute('selected','false');
               this.removeAttribute('selected');
            });
            selectBoxNode.('selectedIndex',-1);
        }, selectNoneNode
    );

selectAllLink、selectNoneLink、および selectBoxNode は自明であり、適切に返されるノードです。更新: selectAll は機能します。それぞれの「選択済み」属性を手動で削除して、再度追加する必要がありました。

selectNoneLink は機能しません。以前に選択されていなかった要素のみを選択解除します... DOM インスペクションでは、selectedIndex 属性が実際に -1 に変更されていることが示されているため、更新が必要でしょうか?

どんな助けでも大歓迎です。これがすべてのフレームワークで発生する場合は、それも知っておくとよいでしょう。

ありがとう!

4

1 に答える 1

1

これは私のために働いた。

YUI().use('node', function(Y) {
   Y.get('#unsel').on('click', function(e) {
     Y.get('select').get('options').set('selected',false);
   });
   Y.get('#sel').on('click', function(e) {
     Y.get('select').get('options').set('selected', true );
   });
});
于 2009-07-29T23:34:15.763 に答える