網絡上已有此功能的函數,是以純JS實現,本文為大家介紹的使用jquery實現,需要的朋友可以參考下
網絡上已有此功能的函數,是以純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 = $("<form></form>",{ 'id':'tempForm', 'method':'post', 'action':url, 'target':name, 'style':'display:none' }).appendTo($("body")); //將隱藏域加入表單 for(var i in args){ _form.append($("<input>",{'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(); } 記錄下來,以後可以用。