この記事は最終更新日から2年以上が経過しており、情報が古くなっている可能性があります。

フォームで送料とかを都道府県別に指定する時などに使用するコピペです。
送信の仕組みは例によって以前の記事に書いたものを使用します。


まずはHTML。

<form action="./postmail.cgi" method="post" name="form1">
<select name="postage" onchange="calculation()">
<option value="0" selected="selected" disabled="disabled">都道府県</option>
<option value="1200">北海道</option>
<option value="900">青森県</option>
<option value="900">秋田県</option>
<option value="900">岩手県</option>
<option value="700">宮城県</option>
<option value="700">山形県</option>
<option value="700">福島県</option>
<option value="600">群馬県</option>
<option value="600">栃木県</option>
<option value="600">山梨県</option>
<option value="600">埼玉県</option>
<option value="600">茨城県</option>
<option value="600">千葉県</option>
<option value="600">東京都</option>
<option value="600">神奈川県</option>
<option value="600">新潟県</option>
<option value="600">長野県</option>
<option value="600">富山県</option>
<option value="600">石川県</option>
<option value="600">福井県</option>
<option value="600">静岡県</option>
<option value="600">愛知県</option>
<option value="600">岐阜県</option>
<option value="600">三重県</option>
<option value="600">大阪府</option>
<option value="600">京都府</option>
<option value="600">奈良県</option>
<option value="600">滋賀県</option>
<option value="600">兵庫県</option>
<option value="600">和歌山県</option>
<option value="700">島根県</option>
<option value="700">鳥取県</option>
<option value="700">岡山県</option>
<option value="700">広島県</option>
<option value="700">山口県</option>
<option value="900">愛媛県</option>
<option value="900">徳島県</option>
<option value="900">高知県</option>
<option value="900">香川県</option>
<option value="900">福岡県</option>
<option value="900">佐賀県</option>
<option value="900">大分県</option>
<option value="900">熊本県</option>
<option value="900">長崎県</option>
<option value="900">宮崎県</option>
<option value="900">鹿児島県</option>
<option value="1200">沖縄県</option>
</select>
<input size="8" type="text" name="field_postage" value="0" />円
</form>

そしてJavaScript。

function calculation(){
var price_postage = document.form1.postage.value * 1;
document.form1.field_postage.value = price_postage;
}