获取表单所有数据,juqery提交,并在新窗口打开,当前页面不跳转

$(function(){
$('#preview').click( function(){ 
var array=$("#inputForm").serializeArray();

  openPostWindow("at_km_info!preView.action",array,"mywin" );

    } );
   

function openPostWindow(url, data, name) {      
   
     var tempForm = $("<form id='tempForm1' method='post' />");      

     //url 
     tempForm.attr('action',url);      
    //open方法不能设置请求方式,一般网页的post都是通过form来实现的。 
     //如果仅仅模拟form的提交方式,那么open方法里那种可设置窗体属性的参数又不能用。 
     //最后想办法整了这么一个两者结合的方式,将form的target设置成和open的name参数一样的值,通过浏览器自动识别实现了将内容post到新窗口中 
   tempForm.attr('target',name);      
$.each(data,function(i,arr){

var hideInput = $("<input type='hidden'/>");      
hideInput.attr('name',arr.name);
hideInput.attr('value',arr.value);
hideInput.appendTo(tempForm);  

});
     

      tempForm.appendTo($('body'));      
    tempForm.submit(openWindow(name));    
     $(tempForm).remove();    
   
}    
   
   
   
function openWindow(name) {   

          var width = 1000;
       var height = 600;
       var left = parseInt((screen.availWidth/2) - (width/2)); //屏幕居中
       var top = parseInt((screen.availHeight/2) - (height/2));
       var windowFeatures = "width=" + width + ",height=" + height + ",status,resizable,left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top;
       window.open('', name,windowFeatures);
}      

猜你喜欢

转载自1124258326.iteye.com/blog/2353537