Google App Script の HTML サービスで、アコーディオン構造 (jQueryUI) 内のフォームを使用しています。フォーム構造は次のようになります。
そして、関連するコードは次のとおりです。
<div id="accordion">
<h3 id='academic-information'>
<a href='#'>
<label><input class='header-checkbox' type='checkbox' />Academic Information</label>
</a>
</h3>
<div>
<form id='calcForm'>
<label>Choose from a Student Type: </label><br />
<input name = "stateTuition" type="radio" id = 'sTuition' value='0'/>Resident Student<br />
<input name = "stateTuition" type="radio" id = 'sTuition' value ='1'/>Non-Resident Student<br />
<br /><br />
<label>Stipulated period of Education :</label><br />
<input name = "academicTrack" type="radio" id = "aTrack" value='0' />4 Years - 15 cr./semester<br />
<input name = "academicTrack" type="radio" id = "aTrack" value='1' />5 Years - 12 cr./semester<br />
<input name = "academicTrack" type="radio" id = "aTrack" value='2' />6 Years - 10 cr./semester<br />
<input name = "academicTrack" type="radio" id = "aTrack" value='3' />7 Years - Non-Traditional<br />
<input name = "academicTrack" type="radio" id = "aTrack" value='4' />8 Years - Non-Traditional<br />
</form>
</div>
<h3 id='campus-housing'>
<a href='#'>
<label><input class='header-checkbox' type='checkbox' />Campus Housing</label>
</a>
</h3>
<div>
<form id='calcForm'>
<label>What is the nature of Housing Plan you wish to subscribe: </label><br />
<input name = "housingType" type="radio" id = "hType" value='0' />No Housing<br />
<input name = "housingType" type="radio" id = "hType" value='1' />Dorm<br />
<input name = "housingType" type="radio" id = "hType" value='2' />Apartment<br />
<br /><br />
<label>Choose from a room type of your desire: </label><br />
<input name = "roomType" type="radio" id = "rType" value='0' />No Housing<br />
<input name = "roomType" type="radio" id = "rType" value='1' />Single Occupancy Room<br />
<input name = "roomType" type="radio" id = "rType" value='2' />Double Occupancy Room<br />
<input name = "roomType" type="radio" id = "rType" value='3' />Single Occupancy - Double Room<br />
<br /><br />
</form>
</div>
<h3 id='other-info'>
<a href='#'>
<label><input class='header-checkbox' type='checkbox' />Miscellaneous Information</label>
</a>
</h3>
<div>
<form id='calcForm'>
<label>Subscription to On-Campus meal plans:</label><br />
<input name = "campusMealPlan" type="radio" id = 'mPlan' value='0' />No Meal Plan<br />
<input name = "campusMealPlan" type="radio" id = 'mPlan' value ='1' />Gold Plan 1<br />
<input name = "campusMealPlan" type="radio" id = 'mPlan' value ='2' />Gold Plan 2<br />
<input name = "campusMealPlan" type="radio" id = 'mPlan' value ='3' />Silver Plan 1<br />
<input name = "campusMealPlan" type="radio" id = 'mPlan' value ='4' />Silver Plan 2<br />
</form>
</div>
</div>
<form id='calcForm'>
<input type="button" value="Project Cost" onclick = 'google.script.run.withSuccessHandler(processCost).processForm(this.parentNode)'/>
</form>
processForm を実行する google.script.run がフォーム「calcForm」に関連付けられたすべての値を渡すことができないことを除いて、すべて正常に動作します。フォームがdivの間で壊れているためだと思います。これに対する解決策は何ですか。つまり、送信ボタンをクリックしたときに、アコーディオンのフォームから収集されたすべての情報を processForm 関数に送信するにはどうすればよいですか。