jQuery Accordion UIをマルチパートフォーム(検証およびフォームプラグインあり)で使用しています。各フォームには、通常の送信ボタンと編集ボタンがあります。編集ボタンは、現在開いているセクションが完了している場合はそれをトリガーし、完了していない場合はアクティブセクションを閉じます。エディットボタンがクリックされたセクションにアコーディオンが開きます。アコーディオンでボタンがクリックされたインデックスを特定する方法
たとえば、ユーザーはセクション1を入力し、次にクリックします。セクション2を埋めている間、ユーザーは間違いを犯してセクション1内の編集ボタンをクリックすることを認識します。セクション2は閉じられ、セクション1は編集のために再度開きます。私はどのインデックスがセクション2を閉じるためにトリガーした編集ボタンを含んでいたのかを知りたいと思います(この例では最初のセクションに関連付けられたインデックスでした)。
編集ボタンがクリックされたセクション(インデックス)を特定する方法がわかりません。 submitHandler内で次のコードを使用すると、正しいインデックスが取得できません。
var acc = $("#accordion"),
index = acc.accordion('option','active'),
index_origin = $(".edit").index(this);
alert(index_origin);
私は不器用なコードについて事前に謝罪しています - 私はこれを初めて知りました。
更新:以下は、コメントで要求されているとおり、ここではアコーデオンの最初のセクションのHTMLです。
<h3 id="section1"><a href="#" class="">Applicant Information</a><button id="edit-applicant-button" class="edit" value="edit" name="edit">Edit Applicant information</button></h3>
<div id="applicant-information" class="step">
<form id="applicant-form" class="registration-form" name="applicant-form" method="post" action="">
<fieldset id="clientInfo">
. . .
</div>
<div class="step-action">
<p>
<span class="next-step">
<button id="submit-first" class="submit" type="submit" value="next" name="next"><em>Next</em></button>
</span>
</p>
</div><
</fieldset>
</form>
</div>
HTMLマークアップを少し投稿できますか? –
もう少し説明してください: "編集ボタンは、編集ボタンがクリックされた他のセクションを開く前に公開セクションを送信します" –
私は明確にするために投稿を編集しました。今はっきりしていることを願っています。 – Ken