-1

保存されたオブジェクトをクリックして親キーを取得する方法はありますか?plsは私のhtmlとコードを調べます:

HTML:

<ul id="one">
    <li>0</li>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>
<ul id="two">
    <li>0</li>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>

私のコード:そして私も欲しいもの:

function makeIt(params){
           params.grandParent1.parent1.sector.click(function(){
                console.log(sectorName,parentName,grandParentName) // how can i get this call, simply how can i fetch the key of values?

                // i expected is : sectorName : sector, parentName:parent1,grandParentName:grandParent1...like this
            })
        }
        $(document).ready(function(){
            params = {
                grandParent1:{
                    parent1:{sector:$('#one').find('li')}
                },
                 grandParent2:{
                    parent2:{sector:$('#two').find('li')}
                 }
            }

            makeIt(params);
        })

これは可能ですか?これを行うための良い方法はありますか?

ここにフィドルがあります:http://jsfiddle.net/SUG6h/2/

4

2 に答える 2

1

内部でこのようなものを探していると思いますmakeit()

sectorname = Object.keys(this); 
parentname = Object.keys(this.parent); 
grandparentname = Object.keys(this.parent.parent);

Object.keys の詳細

Rick が以下に記したように、これは IE8 ではサポートされていません。そのため、for..in ステートメントを使用してオブジェクトのキーをループすることで情報を取得することもできます。

于 2012-05-08T17:54:44.360 に答える
0

自分で DOM をトラバースして、親ノードを見つけることができます。

https://developer.mozilla.org/en/DOM/Node.parentNode

すでに DOM 操作に jQuery を使用している場合は、なんらかの一貫性を維持する必要があります。

于 2012-05-08T18:10:46.137 に答える