0

Google App Script の HTML サービスで、アコーディオン構造 (jQueryUI) 内のフォームを使用しています。フォーム構造は次のようになります。

HtmlService のフォームを持つアコーディオン

HtmlService のフォームを持つアコーディオン

そして、関連するコードは次のとおりです。

    <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 関数に送信するにはどうすればよいですか。

4

2 に答える 2

1

そのようにフォームを分割することはできません。すべての div と jquery を内部に含めて、コード全体を 1 つのフォームにラップしないのはなぜですか?

于 2013-01-11T19:57:56.580 に答える