在点击链接的时候,进入的是含有两有IFREAME的嵌套页面,代码如下:
<frameset rows="50,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="search.aspx" name="searFrame" id="searFrame" title="searFrame" />
<frame src="printCjb.aspx" name="printFrame" scrolling="YES" id="printFrame" title="printFrame" />
</frameset>
其中上面就是查询页面,关键代码如下
<input type="text" id="txtLsh" style="width:222px" onkeydown="return onKeyDown1();" />
<input id="btnSearch" type="button" style="width:101px;" value="查询" onclick="javascript:gosearch()" />
<input id="btnPrint" type="button" style="width:101px;" value="打印" onclick="javascript:goprint()" />
<script type="text/javascript" language="javascript">
function goprint(){
window.parent.frames['printFrame'].focus();
window.parent.frames['printFrame'].print();
}
function gosearch(){
var lsh=document.getElementById('txtLsh').value;
window.parent.frames['printFrame'].location.href="PrintCjb.aspx?lsh="+escape(lsh); //将查询条件传递给要打印的页面,将值填充
}
function onKeyDown1(){
if(event.keyCode==13){
//***********************关键问题就是在这里,
//在输入查询条件的时候,想实现查询,并自己调用打印
//我的方法
document.all.btnSearch.click(); //调用查询按钮的点击事件,结果正确显示,问题就在后面
goprint() ;//如果直接调用打印,此时页面可能没有加载完成,调用打印过来,页面的值同样是空白,一直在线等候,希望高手帮忙解答,谢谢了! 我也想过使用setTimeout等,暂停执行没有打到想要的效果
}
}
<frameset rows="50,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="search.aspx" name="searFrame" id="searFrame" title="searFrame" />
<frame src="printCjb.aspx" name="printFrame" scrolling="YES" id="printFrame" title="printFrame" />
</frameset>
其中上面就是查询页面,关键代码如下
<input type="text" id="txtLsh" style="width:222px" onkeydown="return onKeyDown1();" />
<input id="btnSearch" type="button" style="width:101px;" value="查询" onclick="javascript:gosearch()" />
<input id="btnPrint" type="button" style="width:101px;" value="打印" onclick="javascript:goprint()" />
<script type="text/javascript" language="javascript">
function goprint(){
window.parent.frames['printFrame'].focus();
window.parent.frames['printFrame'].print();
}
function gosearch(){
var lsh=document.getElementById('txtLsh').value;
window.parent.frames['printFrame'].location.href="PrintCjb.aspx?lsh="+escape(lsh); //将查询条件传递给要打印的页面,将值填充
}
function onKeyDown1(){
if(event.keyCode==13){
//***********************关键问题就是在这里,
//在输入查询条件的时候,想实现查询,并自己调用打印
//我的方法
document.all.btnSearch.click(); //调用查询按钮的点击事件,结果正确显示,问题就在后面
goprint() ;//如果直接调用打印,此时页面可能没有加载完成,调用打印过来,页面的值同样是空白,一直在线等候,希望高手帮忙解答,谢谢了! 我也想过使用setTimeout等,暂停执行没有打到想要的效果
}
}
解决方案 »
- asp.net 日期流水号(急!在线等)
- 页面加载的麻烦问题
- javascript的无能为力!
- 找不到文件或程序集名称“Web.SQLServer”,或找不到它的一个依赖项。
- 100分求英文文献翻译,在10000个英文字符之间,翻译成中文为2000字,两篇,急
- 一个数据流转化成一个图片保存起来...大家帮忙看看.急急.
- 怎么样开发网站的邮件系统
- 如何使用asp.net2.0中Resources文件夹中的资源文件(加载了图片)?
- 问一个MODEL的问题,关于三层结构的MODEL问题,知道的,进来讨论一下。。有理就给分了。。。。。。。。。。。。。。。。进来讨论吧。
- 本人正在学习asp.net(出学学过vb),大概能需要几个月的时间能作出简单的连接数据库的网站?
- 从dataset中选出想的行的前10条记录
- 求助,帮看看MICROSOFT.JET.OLEDB.4.0'用法
document.all.btnSearch.click(); 在进行查询过来,
setTimeout(document.getElementById('btnPrint').click(),3000),这样能显打印界面,不过为什么看不到延迟的效果????
ie支持outerText,firefox支持textContent
if (isIE)
{
var spanTest=document.getElementById('spanID');
spanValue = spanTest.outerText;
}
else
{
spanValue = spanTest.textContent;
}