應用場景:
微信授權登入過程中,需要使用者確認,故衍生此需求;
對應的邏輯不放在前端的原因是,此部分邏輯屬於偏功能業務,所以放在後端,方便統一管理。
解決方法:
透過php echo出javascript腳本,這裡要注意的一點是緩衝區。
緩衝區應該是有三個部分,分別是php、webserver、web browser,可以透過程式碼或設定檔做到即時輸出,相對而言後台是可控的,但是前台不同瀏覽器緩衝機制是不同的,這裡沒有深入研究。我的解決方案是,允許非即時輸出。
允許非即時輸出的一個要求是,在處理彈跳窗後,不要程式跳躍。如下:
<?<span style="color: #000000;">php </span><span style="color: #0000ff;">echo</span> "<script> if(confirm( '请选择跳转页面,是跳转到yes.html 否跳转到no.html? ')) location.href='yes.html';else location.href='no.html'; </script>"<span style="color: #000000;">; </span><span style="color: #008000;">//</span><span style="color: #008000;">以下hearder部分,是不可以加入的。 //header('location:http://www.baidu.com'); </span> ?>