sttsのソースコードMemoブログ

色々やってみた結果のMemo

ソース

ユーザが、textフィールドの値を入力するかわりに、新しいダイアログ(Window)を開いて値を選択する例です。
FORMのinput type="text"の値を新しい子供のWindowを開いて、子供のWindowから変更します。

親Window

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>自宅サーバテスト</title>
<script type="text/javascript">
//<![CDATA[
function windowopen() {
  var newW = window.open("windowchild.html", "newWindow", "width=640,height=480");
}
//windowopen();
//]]>
</script>
</head>

<body>
自宅サーバ
<form method="POST" action="windowresult.php">
  <br />
  <input type="submit" name="submit" value="送信" />
  <br />
  <input type="submit" name="cancel" value="キャンセル" />
  <br />
  <input type="text" name="inp_value" value="Hoge" />
  <div onclick="windowopen();">Windowオープン</div>
</form>
</body>
</html>

子供Window

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>自宅サーバテスト</title>
<script type="text/javascript">
//<![CDATA[
function setParentForm() {
   //opener.moveTo(0,0);
   opener.document.forms[0].elements["inp_value"].value="childvalue";
   window.close();
}
//]]>
</script>
</head>

<body>
自宅サーバ Child window
  <input type="submit" value="親Windowに設定" onclick="setParentForm();" />
</body>
</html>

結果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>自宅サーバテスト</title>
<script type="text/javascript">
//<![CDATA[
//]]>
</script>
</head>

<body>
<h1>結果</h1>
PATH:
<?php echo $_POST["inp_value"]; ?>
<br />
SUBMIT:
<?php echo $_POST["submit"]; ?>
<br />
CANCEL:
<?php echo $_POST["cancel"]; ?>
<br />
</body>
</html>