标题:如何使框架里弹出的窗口在主页面上显示?
只看楼主
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
结帖率:88.89%
 问题点数:0 回复次数:6 
如何使框架里弹出的窗口在主页面上显示?
请问各位大虾,我遇到了个很气人的问题,我利用一个表格做了个框架《iframe 。。。》《/iframe》结果,我点击这个框架里的按钮弹出一个窗口,但是这个窗口只能显示在框架所在的页面,结果没法在主页面看到框架内弹出窗口的所有内容,我怎样才能使这个框架内网页弹出的窗口在主页上显示,我选择该窗口上的内容后,窗口的值能正常赋到框架页面上?
非常急,谢谢各位大虾!
搜索更多相关主题的帖子: 主页面 框架 窗口 iframe 
2007-09-12 21:48
shaoli4261
Rank: 3Rank: 3
来 自:安徽.巢湖
等 级:新手上路
威 望:6
帖 子:212
专家分:0
注 册:2007-9-11
得分:0 

你的问题没有说清楚,到底弹出什么值,从那里弹出来的!!!!


爱一个人,不一定拥有她,但拥有一个人,就要爱她。也许她不是最好的,但她可能是你最值得的珍惜的人。
2007-09-12 21:58
multiple19O2
Rank: 1
等 级:新手上路
帖 子:326
专家分:0
注 册:2007-8-29
得分:0 
唐僧……
2007-09-12 21:59
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
得分:0 
不好意思,是这样,我做的一个查询,日期需要选择输入,点击日期图标时弹出日历,然后供选择。我的问题就是这样的,框架里我做的日期选择,但是框架很小,不能完全显示所有的日历,我想能不能让框架里弹出的日历在主页显示,这样就可以防止框架的空间较小,无法显示所有的日历的问题,而且我可以在选择相应的日历后,数据传到框架后的文本框中,就这样一个问题,请大家多多帮忙!谢谢!
2007-09-12 22:26
不惑
Rank: 2
等 级:论坛游民
威 望:2
帖 子:569
专家分:13
注 册:2007-3-22
得分:0 
把弹出日历的程序写在主页面里。
在点击框架内的选择时,运行父页面里的日历程序
试试。
2007-09-13 09:46
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
可以把弹出窗口的函数写在主页面里
比如
main.htm
<html>
<head>
<title>框架函数调用</title>
<script language="javascript >
function ShowDialog(text,width,height)
{

var InsertHTML=window.showModalDialog(text,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;help:no;scroll:auto;status:no");
if(InsertHTML!=null)
{
alert(InsertHTML);
}
}
}
</script>
</head>
<body>
<iframe name="myFrame" src="myFrame.htm" width="500" height="600" >
</body>
</html>

myFream.htm
<html>
<head>
<title>框架函数调用</title>
<script language="javascript">
function ShowWindow()
{
parent.ShowDialog("http://bbs.bc-cn.net",500,600);
}
</script>
</head>
<body>
<input type="button" onClick="ShowWindow();" value="在父框架弹出窗口" >
</body>
</html>
可以利用parent作为调用父框架的句柄,来调用父框架的一切内容。
2007-09-13 10:14
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
得分:0 

非常感谢老大的帮助!可是我修改后能在父框架弹出窗口,但是一直提示有错误,而且选择其中的日期后无法正常的传递到子框架里的文本框里。现将该代码放在此处,请老大继续帮助,谢谢!
日历代码:
<body topmargin="0" leftmargin="15" rightmargin="15" onLoad="clockon()"onload="newCalendar();" onmousemove="dragIt();" onmousedown="engage();" onmouseup="release();">
<div id="imgg" class="mainfontsize" style="position:absolute;display:none; left:110px; width: 137px; height: 56px; top: 12px; border: 1px none #000000">
<table align="center" border="0" bgcolor="#000000" cellpadding="1" cellspacing="1">
<tr bgcolor="#ccFFcc" onmousedown="this.style.background='#eeffee';" onmouseup="this.style.background='#ccffcc';">
<td name="ii" align="right" height="10"><img style="cursor:hand" src="frontdeskinterface/picture/rightarrow.gif" border="0" onclick="clos();" alt="关闭" width="11" height="11"></td>
</tr>
<tr>
<td bgcolor="#FFFFFF">
<SCRIPT LANGUAGE="JavaScript">
var selectedObj;
var offsetX, offsetY;
var ttt;
function shiftTo(x,y) {
imgg.style.top=y;
imgg.style.left=x;
}
function dragIt() {
if(selectedObj)
{
shiftTo((window.event.clientX - offsetX),(window.event.clientY - offsetY))
}
}
function engage()
{
if(event.srcElement.tagName=="TD"&&event.srcElement.name=="ii")
{
selectedObj=true;
offsetX = window.event.offsetX;
offsetY = window.event.offsetY;
}
}
function release(evt) {
selectedObj=false;
}


function clos()
{
imgg.style.display="none";
}
function clic(v)
{
ttt=v;
imgg.style.display="block";
imgg.style.top=window.event.clientY;
imgg.style.left=window.event.clientX;
}

var months = new Array("一月", "二月", "三月",
"四月", "五月", "六月", "七月", "八月", "九月",
"十月", "十一月", "十二月");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,
30, 31, 30, 31);
/*var days = new Array("Sunday", "Monday", "Tuesday",
"Wednesday", "Thursday", "Friday", "Saturday");*/
var days = new Array("日","一", "二", "三",
"四", "五", "六");
function getDays(month, year) {
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) ||
(0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}

function getToday() {
//得到今天的年,月,日
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}


today = new getToday();

function newCalendar() {

today = new getToday();
var parseYear = parseInt(document.all.year
[document.all.year.selectedIndex].text);
var newCal = new Date(parseYear,
document.all.month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;
if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth()))
day = today.day;
var tableCal = document.all.calendar.tBodies.dayList;
var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear());
for (var intWeek = 0; intWeek < tableCal.rows.length;intWeek++)
for (var intDay = 0;intDay < tableCal.rows[intWeek].cells.length;intDay++)
{
var cell = tableCal.rows[intWeek].cells[intDay];
if ((intDay == startDay) && (0 == daily))
daily = 1;
if(day==daily)
//今天,调用今天的Class
cell.className = "today";
else if(intDay==6)
//周六
cell.className = "sunday";
else if (intDay==0)
//周日
cell.className ="satday";
else
//平常
cell.className="normal";

if ((daily > 0) && (daily <= intDaysInMonth))
{
cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
}

function getDate() {
var sDate;
//这段代码处理鼠标点击的情况
if ("TD" == event.srcElement.tagName)
if ("" != event.srcElement.innerText)
{
eval("document.all."+ttt).value=document.all.year.value + "-" + document.all.month.value + "-" + event.srcElement.innerText;
imgg.style.display="none";
}
}
</SCRIPT>
<input type="hidden" name="ret">
<TABLE ID="calendar" cellspacing="0" cellpadding="0" border=0 align="center" class="mainfontsize">
<THEAD>
<TR>
<TD COLSPAN=7 ALIGN=CENTER>
<SELECT ID="month" ONCHANGE="newCalendar()">
<SCRIPT LANGUAGE="JavaScript">
for (var intLoop = 0; intLoop < months.length;
intLoop++)
document.write("<OPTION VALUE= " + (intLoop + 1) + " " +
(today.month == intLoop ?
"Selected" : "") + ">" +
months[intLoop]);
</SCRIPT>
</SELECT>

<SELECT ID="year" ONCHANGE="newCalendar()">
<SCRIPT LANGUAGE="JavaScript">
for (var intLoop = today.year-7; intLoop < (today.year+1);
intLoop++)
document.write("<OPTION VALUE= " + intLoop + " " +
(today.year == intLoop ?
"Selected" : "") + ">" +
intLoop);
</SCRIPT>
</SELECT>
</TD>
</TR>
<TR CLASS="days">
<SCRIPT LANGUAGE="JavaScript">

document.write("<TD class=satday>" + days[0] + "</TD>");
for (var intLoop = 1; intLoop < days.length-1;
intLoop++)
document.write("<TD>" + days[intLoop] + "</TD>");
document.write("<TD class=sunday>" + days[intLoop] + "</TD>");
</SCRIPT>
</TR>
</THEAD>
<TBODY border=1 cellspacing="0" cellpadding="0" ID="dayList"ALIGN=CENTER ONCLICK="getDate()">
<SCRIPT LANGUAGE="JavaScript">
for (var intWeeks = 0; intWeeks < 6; intWeeks++) {
document.write("<TR style='cursor:hand'>");
for (var intDays = 0; intDays < days.length;
intDays++)
document.write("<TD></TD>");
document.write("</TR>");
}
</SCRIPT>
</TBODY>
</TABLE>
<div align="center"></div>
<div align="center">
<Script Language="JavaScript1.2">

function Cancel() {
document.all.ret.value = "";
window.close();
}

</script>
</div>
</td>
</tr>
</table>
</div>

子框架代码:
<script language="javascript">
function ShowWindow()
{
parent.clic('datestart');
}
。。。。

<img src="../officemanagement/pic/calendar.gif" width="30" height="19" style="cursor:hand" onClick="ShowWindow();">

2007-09-16 13:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-169480-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.054859 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved