jQuery アコーディオンの要素から値とテキストを取得しようとしています。それらは、アコーディオンでラップされたホームページ上の2つのリストの別々のリストです。以下の html/javascript を参照してください。
<!--Homepage Accordion-->
<div data-role="collapsible-set" data-inset="false" id="homepageAccordian" >
<!-- Crew List -->
<div data-role="collapsible" id="collapsibleCrewList">
<h3>Current Crew</h3>
<ul data-role="listview" data-inset="false" id="crewList">
<li>Crew #1</li>
<li>Crew #2</li>
<li>Crew #3</li>
<li>Crew #4</li>
</ul>
</div>
<script>
$(document).on('pageshow', '#TCHomepage', function(){
//alert('page show event fired');
checkSessionStorage();
});
</script>
<script>
$(document).on('click', '#crewList li a', function () {
clickOnCrewOnHomepage();
});
</script>
<!-- Open Calls -->
<div data-role="collapsible"id="collapsibleOpenCallsList">
<h3>Open Calls</h3>
<ul data-role="listview" data-inset="false" id="openCallsList">
<li>Call #1</li>
<li>Call #2</li>
<li>Call #3</li>
<li>Call #4</li>
</ul>
</div>
<script>
$(document).on('click', '#openCallsList li a', function () {
clickOnTroubleCallOnHomepage();
});
</script>
</div>
私の問題は、アコーディオンのリンクのいずれかをクリックすると、リンクの値またはクリックされたリンクのテキストをそれぞれ取得できないことです。私のjavascriptファイルでは、これらの関数を使用して値またはテキストを取得しようとしています。
$(this).closest('li').attr('value');
と $(this).text();
両方のアコーディオンのイベント ハンドラは$(document).on('click', '#crewList li a', function () { });
、ID が異なります。
問題は、リンクがクリックされたときにこれらの関数が何も返さないことです。