当前位置:  编程技术>WEB前端

使用jquery实现以post打开新窗口

    来源: 互联网  发布时间:2014-08-25

    本文导语:  网络上已有此功能的函数,是以纯JS实现。但是在项目中发现,此函数无法兼容Firefox,由此我重写了此方法. 代码如下: //默认新窗口配置 var windowDefaultConfig = new Object; windowDefaultConfig['directories'] = 'no'; windowDefaultConfig['location'] = ...

网络上已有此功能的函数,是以纯JS实现。但是在项目中发现,此函数无法兼容Firefox,由此我重写了此方法.
代码如下:

//默认新窗口配置
var windowDefaultConfig = new Object;
windowDefaultConfig['directories'] = 'no';
windowDefaultConfig['location'] = 'no';
windowDefaultConfig['menubar'] = 'no';
windowDefaultConfig['resizable'] = 'yes';
windowDefaultConfig['scrollbars'] = 'yes';
windowDefaultConfig['status'] = 'no';
windowDefaultConfig['toolbar'] = 'no';

代码如下:

/**
* 以POST表单方式打开新窗口的JQUERY实现
@param:url 需要打开的URL
@param:args URL的参数,数据类型为object
@param:name 打开URL窗口的名字,如果同一按钮需要重复地打开新窗口,
而不是在第一次打开的窗口做刷新,此参数应每次不同
@param:windowParam 新打开窗口的参数配置
* @author: haijiang.mo
*/
function jQueryOpenPostWindow(url,args,name,windowParam){


//创建表单对象
var _form = $("",{
'id':'tempForm',
'method':'post',
'action':url,
'target':name,
'style':'display:none'
}).appendTo($("body"));

//将隐藏域加入表单
for(var i in args){
_form.append($("",{'type':'hidden','name':i,'value':args[i]}));
}

//克隆窗口参数对象
var windowConfig = clone(windowDefaultConfig);

//配置窗口
for(var i in windowParam){
windowConfig[i] = windowParam[i];
}

//窗口配置字符串
var windowConfigStr = "";

for(var i in windowConfig){
windowConfigStr += i+"="+windowConfig[i]+",";
}

//绑定提交触发事件
_form.bind('submit',function(){
window.open("about:blank",name,windowConfigStr);
});

//触发提交事件
_form.trigger("submit");
//表单删除
_form.remove();
}

记录下来,以后可以用。

    
 
 

您可能感兴趣的文章:

  • fork一个子进程后在打开一个文件,如何在子进程中使用这个打开的文件描述符号
  • c/c++开源软件 iis7站长之家
  • linux不使用iptables如何打开端口
  • 使用http://vim.spf13.com/配置vim打开文件出错
  • 使用TCP传输文件,文件传输成功了,大小也一样,但无法打开
  • 有没有办法在打开一个文件之前判断当前是否有进程在使用(读或写)该文件
  • 如何使用javascript语言实现在打开PAGE的时候,自动弹出另外一个窗口PAGE2,
  • *.db文件使用什么数据库打开的文件呀?
  • 怎么打开一个进程并得到这个进程内存使用的信息?
  • 如何使用javascript语言实现在打开PAGE的时候,自动弹出另外一个窗口PAGE2,
  • c语言打开文件函数使用方法
  • iptables在使用drop的默认规则下,如何打开DNS服务
  • 关于使用applet打开Web页面
  • 为什么apache里已经设置了httpd使用默认端口80,却并没打开80端口呢?
  • 程序需要使用ifconfig命令打开接口,但联网图标有时无反应
  • 使用struts的时候,怎么才能在页面打开的时候,form里面已经填入我所需要的值?
  • 求助:如何打开所有udp断口,使用iptables命令
  • 以二进制方式打开的文件是不是一定要使用二进制的方式进行读写????
  • Linux下使用MyEclipse6.0打开window下创建的文本时中文部分出现乱码
  • 如何使用javascript语言实现在打开PAGE的时候,自动弹出另外一个窗口PAGE2,
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • 弱智问题:我们怎么才知道要使用的方法需要实现什么接口才能使用这个方法呢?
  • 使用java jdk中的LinkedHashMap实现简单的LRU算法
  • 请问谁能讲讲使用软件实现的mcu原理。
  • 在Python3中使用urllib实现http的get和post提交数据操作
  • 可不可以在程序中直接使用ftp客户端的函数实现文件传输?
  • 使用libpcap实现抓包程序的步骤及代码示例
  • 如何使用http协议实现流媒体的传输?
  • juqery的python实现:pyquery学习使用教程
  • 使用JavaScript实现的Flash运行环境 Gordon
  • 使用Applet能不能实现基于浏览器的打印呢???
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jquery代码-如何使用jQuery来解析xml
  • 使用jquery局部刷新(jquery.load)从数据库取出数据
  • jquery代码-如何使用jQuery来检测右键和左键的鼠标单击两种情况
  • jquery使用jquery.zclip插件复制对象的实例教程
  • Jquery图片延迟加载插件jquery.lazyload.js的使用方法
  • jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
  • jquery代码-如何使用多个属性来进行过滤
  • jQuery.holdReady()使用方法
  • JQuery插件fancybox无法在弹出层使用左右键的解决办法
  • 使用jQuery重置(reset)表单的方法
  • jquery使用$(element).is()来判断获取的tagName
  • 使用Jquery获取带特殊符号的ID 标签的方法
  • 使用jquery prev()方法找到同级的前一个元素
  • jQuery 1.9使用$.support替代$.browser的使用方法
  • jquery的live使用注意事项
  • jquery链式操作的正确使用方法
  • jquery代码-如何正确使用ToggleClass
  • 通过$(this)使用jQuery包装后的方法或属性
  • 使用JS或jQuery模拟鼠标点击a标签事件代码
  • JQuery中使用ajax传输超大数据的解决方法
  • C++ I/O 成员 tellg():使用输入流读取流指针
  • 在测试memset函数的执行效率时,分为使用Cash和不使用Cash辆种方式,该如何控制是否使用缓存?
  • C++ I/O 成员 tellp():使用输出流读取流指针
  • 求ibm6000的中文使用手册 !从来没用过服务器,现在急需使用它,不知如何使用! 急!!!!!
  • Python不使用print而直接输出二进制字符串
  • 请问:在使用oracle数据库作开发时,是使用pro*c作开发好些,还是使用库函数如oci等好一些啊?或者它们有什么区别或者优缺点啊?
  • Office 2010 Module模式下使用VBA Addressof
  • 急求结果!!假设一个有两个元素的信号量集S,表示了一个磁带驱动器系统,其中进程1使用磁带机A,进程2同时使用磁带机A和B,进程3使用磁带机B。
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • c#中SAPI使用总结——SpVoice的使用方法
  • tcmalloc内存泄露优化c++开源库下载,安装及使用介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3