2016-04-06 72 views
0

我有這個insertData()函數保存到數據庫,並顯示出window.open()的基礎上的條目數據庫 所以這是我的嘗試,類時滯window.open()函數後

function(isConfirm){ 
    if (isConfirm) { 
     insertData(); 
     window.open("../../../html/reports/cashreceipt_print.php?sr_record="+sr_id); 
    } else { 
     swal("CANCELLED", "", "error"); 
    } 
}); 

function insertData(){ 
    $.ajax({ 
     type: 'POST', 
     url: "../../../html/main/divpages/submit_data.php", 
     data: sentReq, 
     dataType: 'JSON', 
     success: function (response, textStatus, jqXHR) { 
      if (response.indexOf("GAGAL") == -1) { 
       window.location.href = "main.php"; 
      } else { 
       alert("GAGAL INSERT"); 
      } 
     } 
    }); 
} 

所以這裏的問題出現在新窗口打開的時候,sr_record =大部分時間都不顯示在那個彈出窗口中。將插入SR_RECORD,並打開窗口將調用剛插入到insertData()中的SR_ID。我可以找到對我來說效果最好的解決方案。請幫我

+1

把'open'在'SUCC ess'功能 – RiggsFolly

+1

僅供參考:彈出式窗口攔截器將阻止窗口打開,因爲用戶操作並未導致窗口打開。 – epascarello

回答

1

insertData是AJAX中,A代表異步的,所以它不會被調用window.open的時間內完成,使用你的成功的功能或使用jQuery的.done方法:

$.ajax({ 
    url: "test.html", 
    context: document.body 
}).done(function(data) { 
    // do your 'data' stuff here 
}); 

$.ajax({ 
    type: 'POST', 
    url: "../../../html/main/divpages/submit_data.php", 
    data: sentReq, 
    dataType: 'JSON', 
    success: function (response, textStatus, jqXHR) { 
     // your sr.id is hopefully on the response object(if its being sent back properly. 
    } 
}); 
+0

success:function(response,textStatus,jqXHR)if(response.indexOf(「GAGAL」)== -1)window.location.href =「main.php」; } else { alert(「GAGAL INSERT」); (函數(){ } } }}。 我這樣做,但不能看彈出工作。 –

+1

那麼你還有其他問題可以記錄響應並查看sr_id? – JordanHendrix

0

確定的解決方案是這樣的簡單,我先打開彈出然後送回main.php

function insertData(){ 
      $.ajax({ 
       type: 'POST', 
       url: "../../../html/main/divpages/submit_data.php", 
       data: sentReq, 
       dataType: 'JSON', 
       success: function (response, textStatus, jqXHR) { 
        if (response.indexOf("GAGAL") == -1) { 
         window.open("../../../html/reports/cashreceipt_print.php?sr_record="+sr_id); 
         window.location.href = "main.php"; 
        } else { 
         alert("GAGAL INSERT"); 
        } 
       } 
      }); 
     }