
行いたいことは郵便番号による住所検索です。
PerlとMysqlをつかって郵便データは取得します。
親ウインドウのテキストボックスに郵便番号を入れて、子ウインドウで都道府県と以下住所を表示させます。
入力ボタンというものを押すと、親ウインドウの都道府県selectボックスと住所テキストボックスに入力させたいというロジックです。
////////親フォーム//////////////
<SCRIPT language="JavaScript">
function OpenZipWin1(){
var Myzip =document.fm.zip1.value;
window.open("hoge.cgi?mode=zip_search&zipcode=" + Myzip,"new","width=500,height=270");
}
</SCRIPT>
<form action="hoge.cgi" method=post name="fm">
<input type=text name=zip1 size=10 maxlength=8 value=""><a href="javascript:void(0);" onClick="OpenZipWin1();">検索</a><br>
<select name="pref">
<option value="">都道府県選択</option>
<option value="1">北海道</option>
<option value="2">青森県</option>
<option value="3">岩手県</option>
<option value="4">宮城県</option>
<option value="5">秋田県</option>
<option value="6">山形県</option>
・・・・
<option value="47">沖縄県</option>
</select>
<input type=text name=add value="" size=60>
</form>
////////子フォーム//////////////
<SCRIPT language="JavaScript">
function setForm()
{
var Mypref = document.subForm.pref.value;
window.opener.document.?????????? = Mypref;
var Mycity = document.subForm.city.value;
window.opener.document.fm.add.value = Mycity;
}
//-->
</SCRIPT>
<p>検索結果</p>
<form name="subForm">
<table border="0" cellpadding="5">
<tr>
<td nowrap>郵便番号</td>
<td>110-0001</td>
</tr>
<tr>
<td>住所</td>
<td>
<input type="text" name="pref" size="20" value="東京都">
<input type="text" name="city" size="60" value="台東区 谷中"></td>
</tr>
</table></form>
<p align=center><input type="submit" value="入力" onclick="javascript:setForm();self.close()"></p>
<p align=center><a href="#" onclick="javascript:window.close()">閉じる</a></p>
問題なのは子ウインドウは都道府県が日本語で、親ウインドウはselectのvalueは数値、要素の方が日本語なのです。
子ウインドウの値を親ウインドウの要素の方と合わせたいのです。
上記の子ウインドウのJavaScriptで
window.opener.document.?????????? = Mypref;
の部分でうまくすればいいのかな・・・とは考えてみたもののうまくいきません。
恐れ入りますがご教授おねがいできませんでしょうか。
よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
子ウィンドウのjavascriptを↓のようにしたら動きました。
動作イメージはあってますかね?
+---------------------------
function setForm()
{
var Mypref = document.subForm.pref.value;
var Mycity = document.subForm.city.value;
var o_Frm = window.opener.document.fm; // 親フォーム
var o_SelectObj = o_Frm.all("pref"); // 親フォームの都道府県オブジェクト
var o_AddObj = o_Frm.all("add"); // 親フォームの市区町村オブジェクト
// 都道府県SELECT BOXの要素分ループ
for (var i = 0; i < o_SelectObj.options.length; i++) {
// 同じ都道府県であった場合
if (Pref == o_SelectObj.options[i].text) {
// 選択状態にする
o_SelectObj.options[i].selected = true;
}
}
window.opener.document.fm.add.value = Mycity;
}
---------------------------+
変数名とかバラバラなのはご愛敬。。
No.1
- 回答日時:
いきなり親とか子とか余計なことまで考えるからわかりにくくなっているのでは?
最初は同じページでやってみると考えがまとまると思いますよ。
とりあえず値を元にselectを調整するのであれば、
selectにidを振ってアクセスし、optionsをforでまわして、
テキストをチェックし、値が合致したところでselectedを
trueにしてやればいいでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<input>の選択肢をプルダウンメ...
-
3つの連動したプルダウンメニュ...
-
<select> をmultiple にしてい...
-
javascriptでセレクトボックス...
-
プルダウンメニューを選択した...
-
selectのnameが配列の場合
-
まったく同じ<select>フォーム...
-
Selectボックスの一覧表示方法
-
見よう見まねで以下のように作...
-
slickのレスポンシブ > center...
-
ツリービューのチェックボック...
-
VB.NET DateTimeの型について
-
プルダウン 項目が多いので先頭...
-
confirmのOK・キャンセルを押し...
-
return trueとreturn falseの用...
-
iframe内のformをサブミットす...
-
onClickとsubmitの処理順序
-
javascriptで<table>背景色の取得
-
クリックでテーブル内の背景色...
-
別ウィンドウへのsubmitの挙動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
javascriptでoptionタグを削除...
-
<input>の選択肢をプルダウンメ...
-
プルダウン選択を変更すると、...
-
selectを変更不可にしたい
-
javascriptでセレクトボックス...
-
スマホのフォームでのselect複...
-
プルダウンメニューの件でお願...
-
【JS】selectでchangeした時の...
-
Selectボックスの一覧表示方法
-
AxWebBrowserで開いたWebページ...
-
selectを使った計算
-
selectボックスで選択数を制限...
-
プルダウンメニューのvalue値を...
-
セレクトボックスで選択した内...
-
セレクトメニューの値の取得
-
ラジオボタンとプルダウンを連...
-
プルダウンの選択内容を次のペ...
-
C#(csファイル)とjavascriptと...
-
複数のプルダウンを1つにまとめ...
-
同じ名前のセレクトがある場合...
おすすめ情報