- PR -

子ウィンドゥが閉じないのです。

投稿者投稿内容
さよこ
ベテラン
会議室デビュー日: 2005/10/13
投稿数: 78
投稿日時: 2006-06-15 20:20
こんばんは。
マスターページを使ったページで実装してみたら、
テキストボックスのIDが、
ctl00_ContentPlaceHolder1_txtID
のようになってしまいました。
javascriptで、
window.opener.document.getElementById('ctl00_ContentPlaceHolder1_txtID').value=〜
のようにタグを指定すればよいのですが、
自動的に追加されるctl00_ContentPlaceHolder1の部分が、
環境等が変わっても常に同じであるのかが不安です。
できれば、この部分は直接文字列としてコードに書かずに、
その都度取得して入れるようにしたいのですが、
取得することはできるのでしょうか。
よろしくお願い致します。


未記入
ベテラン
会議室デビュー日: 2003/06/26
投稿数: 76
投稿日時: 2006-06-16 10:06
asp:ButtonってVisivle=falseするとHTML自体生成されないのではないかと...。

<input type=button id=hogehoge runat=server style="display:none"...

のほうが良くありません?同じくJScriptで使う項目は出来るだけHTMLで直に
書いたほうが扱いが便利ですよ。

<html>
<head>
<title>親</title>
<script type="text/javascript" >
var a = null;
function openChild() {
a = window.open("子供.html");
}
function closeChilde(){
if( a != null && !a.closed )
a.close();
}
</script>
</head>
<body>
<form id="Form1" runat="server" onunload="closeChilde();">
<input type="button" onclick="openChild()" value="子供を開く" />
<span id="txtValue"></span>
</body>
</html>


<html>
<head>
<title>子</title>
<script type="text/javascript" >
function CloseMe(){
window.opener.document.getElementById("txtValue").innerText =
document.getElementById("txtInput").value;
window.opener = null;
window.close();
}
</script>
</head>
<body>
<form>
<input type="button" onclick="CloseMe();" value="画面を閉じる" />
<input type=text id="txtInput"></span>
</form>
</body>
</html>


あ〜、子画面をモーダルで開くのも楽しいかも。
未記入
ベテラン
会議室デビュー日: 2003/06/26
投稿数: 76
投稿日時: 2006-06-16 10:08
あっ、ソースは「かるあ」さんを参考にさせていただきました!感謝。

スキルアップ/キャリアアップ(JOB@IT)