うまくいけば、誰かがこの問題で私を助けてくれます。私はjQuery Mobileを使用しており、クリック時に要素のIDを取得したいのですが、リスト項目が折りたたまれていない場合に限ります。以下は私が持っているものです。
HTML:
<div data-role="page" id="myPage">
<h3>Current Clients</h3>
<div data-role="collapsible-set">
<div data-role='collapsible' data-collapsed='true' class='userList'>
<h3 id='1' class='unverified getID'>John Doe</h3>
<div>
<p>collapsed content 1</p>
</div>
</div> <!-- .userList -->
<div data-role='collapsible' data-collapsed='true' class='userList'>
<h3 id='2' class='verified getID'>Jane Doe</h3>
<div>
<p>collapsed content 2</p>
</div>
</div> <!-- .userList -->
</div><!-- collapsible-set -->
</div><!-- #myPage -->
JS:
var thisID;
$(".getID").click(function(e) {
if($(this).parent(".userList").attr('data-collapsed', false)){
thisID = $(this).attr("id");
alert(thisID);
}
});
上記の jsFiddle のコードは次のとおりです: http://jsfiddle.net/8xHmj/9/
ID を取得しますが、要素がクリックされるか、折りたたまれているかどうかにかかわらず、アラートを出します。どんな助けでも大歓迎です。