ajax回撥開啟新窗體防止瀏覽器攔截
function click_fun(){ window.open("www.baidu.com");//能開啟 $.ajax({ 'url': '${pageContext.request.contextPath}/activity/savePrizes.htm', 'type': 'post', 'dataType': 'json', 'data': data, success: function (data) { window.open("www.baidu.com");//被攔截 }, error:function(){ } }); }
分析: 開啟新窗體只能在點選事件內觸發,點選事件內的回撥函式內開啟窗體會被攔截,瀏覽器會認為是廣告彈窗之類的程式碼 解決1:
function click_fun_new(){ var tempwindow=window.open();//先開啟臨時窗體,由於是點選事件內觸發,不會被攔截 $.ajax({ 'url': '${pageContext.request.contextPath}/activity/savePrizes.htm', 'type': 'post', 'dataType': 'json', 'data': data, success: function (data) { tempwindow.location = "www.baidu.com";//當回撥的時候更改臨時窗體的路徑 }, error:function(){ tempwindow.close();//回調發現無需開啟窗體時可以關閉之前的臨時窗體 } }); }
解決2:
function click_fun_new(){ var flag = false; $.ajax({ 'url': '${pageContext.request.contextPath}/activity/savePrizes.htm', 'type': 'post', 'dataType': 'json', 'data': data, 'async':false,//同步請求 success: function (data) { $("#a").attr("href","www.baidu.com");//當回撥的時候更改頁面上或建立的某個a標籤的href flag = true;//更改標誌 }, error:function(){ } }); if(flag){ $("#a").click();//href屬性更改後模擬點選 } }
相關推薦
ajax回撥開啟新窗體防止瀏覽器攔截
function click_fun(){ window.open("www.baidu.com");//能開啟 $.ajax({ 'url': '${pageCo
vue 路由跳轉開啟新視窗(被瀏覽器攔截)
今天做了一個功能是點選按鈕路由跳轉開啟新的視窗頁面 第一種方法 <router-link target="_blank" :to="{path:'/FundManger/FundProductMoney', query:{managerId:fundcode}}&
window.open開啟新視窗被瀏覽器攔截的處理方法
window.open是javascript函式,該函式的作用是開啟一個新視窗或這改變原來的視窗,如果你直接在js中呼叫window.open()函式去開啟一個新視窗,瀏覽器會攔截你,那麼如何避免呢。 注意,只有直接使用js呼叫 window.open(url); 開啟新視窗時,才會被攔截,如果是改變原理額
非同步請求後根據結果window.open方式開啟新頁面,瀏覽器攔截彈窗問題
專案中出現一個問題,要求根據從後臺非同步請求後的結果開啟新的標籤頁,發現使用window.location.href=”地址”,該方法沒有問題,但是使用window.open開啟新頁面的時候會無效。
開啟新頁面被瀏覽器攔截的問題
專案中,需求是先開啟彈窗完成資料校驗請求後,再開啟新的頁面,做表單資料的處理;程式碼完成後,彈出頁面的時候,總是被瀏覽器攔截,原因是瀏覽器的安全機制,防止非使用者操作彈出頁面,阻止廣告等非法頁面彈出,網上提供了一下幾種解決辦法:1. 使用window.open(url,"_b
【JavaScript】JS開啟新視窗防止被瀏覽器阻止的方法
本文例項講述了JS開啟新視窗防止被瀏覽器阻止的方法。分享給大家供大家參考。具體分析如下: 用傳統的window.open()方式開啟新視窗,會被瀏覽器阻止,那麼,我們如何才能讓JS開啟新視窗不被瀏覽器阻止呢?其實辦法還是有的,這裡我們就來分析一下如何解決這個問題 我最近也
Ajax回退刷新頁面問題的解決辦法
必須 自動 是我 ret 處理器 diff 不支持 一起學 資料 在腳本之家看到一篇文章,覺得以後可能會用上,但是竟然不能收藏,所以只能將其轉到博客園。 以下是原文地址: http://www.jb51.net/article/87856.htm 這篇文章主要介紹了Aj
ajax獲取伺服器靜態資源(一個.json檔案),請求成功,有檔案返回,但是ajax回撥卻進了error(一個回車鍵惹出的禍)
問題描述:同事反應問題:向後臺請求json檔案,完了在前臺渲染一個表格,但是始終渲染不出來。 $.ajax({ &nbs
layui之ajax--回撥函式
問題:一個簡單的AJAX提交表單操作,經常發生後臺資料儲存好了,前端layer彈出層沒有關閉,父頁面沒有重新整理,定位發現是回撥函式沒有執行!!!用Google Chrome瀏覽器這種現象較少,而Safari 和 firefox瀏覽器100%發生。 解決過程:困擾了很久,以
SpringMVC在處理Ajax請求後返回void導致前臺Ajax回撥函式不執行
問題簡述 在一次SpringMVC專案中,前臺通過Ajax請求,準備修改資料庫中的資料。因為Ajax請求只是讓後臺更改資料,所以Controller方法根本不需要返回給前臺任何資料,所以我們將Controller的方法的返回值設定為void。但令我困擾的是,前端頁面本應該執行的回撥函式一直不
jQuery 中ajax回撥函式獲得的資料格式問題
目的:在使用ajax做前、後臺互動時,有時需將從controller返回的資料在jsp頁面的表格展示出來;但是,如果資料格式不對,是無法展示的。 解決方法: 1.controller中返回一個Lis
a 標籤 開啟新窗體 target="_blank" 失效 解決辦法
問題在 a 標籤中 已加入 target="_blank" 而網頁開啟 只在一個新視窗中開啟 始終都在改新視窗中重新整理內容 使用者如果失去該視窗的焦點 在原視窗中點選 a 標籤 使用者 看不到 新開啟的窗體 實際已在失去焦點的窗體中 重新整理了內容 會給使用者造成錯
ajax返回data:text/plain,導致ajax回撥success不執行
問題描述: 正常情況下,ajax post返回的資料應該在response中(請求為非同步時),但是卻有第二個,chrome中請求描述如下: name path | Method | status | Type data:text/p
使用@ResponseBody返回String物件無法觸發ajax回撥函式
莫名其妙!!!!!!! 用@ResponseBody返回一個String物件無法觸發前臺回撥函式,而且你確定你程式碼沒有問題 如果你前臺的ajax中寫了dataType:"json"屬性,把它去掉 就可以了。。。。。。。
ajax回撥函式 返回404
先貼程式碼: JS程式碼如下。 PProductComposing.searchUp = function() { var _id = "#pProductComposing_type"; var url = $('#ctx').val()+"/pages/pProdu
ajax回撥函式不能賦值
在做表單驗證碼功能的時候,思路是當驗證碼錯誤的時候,提示錯誤資訊,同時return false,不執行post請求。驗證碼正確的時候執行post請求。 var data="action="+$('#confirm-code').val(); var
jquery Ajax回撥函式
在學習js期間一直不明白回撥函式的意思,當我理解了才發現是我自己想多了,回撥函式其實是個很好理解的東西,我真正不理解的是當jquery ajax傳送一個請求時為什麼會執行這個回撥函式,其實這個回撥函式是ajax請求中定義的一個方法而已,jquery ajax請求封裝的核心物
富文字編輯器CKEDITOR使用注意事項,Ajax回撥
先簡述下,寫這篇文章的原因,用了ckeditor富文字編輯器,獲取值的時候,總是空值。 先說下,用法: 1、從網上下載ckeditor的相關檔案: 2、在介面上呼叫js檔案 <script src="<%=Request.Appli
jquery中ajax回撥函式使用this
今天在寫ajax請求的時候success中程式碼老是不能正常執行,找了半天原因。程式碼如下 $.ajax({type: 'GET', url: "/flag/",
@ResponseBody 返回null物件 ajax回撥不成功
@ResponseBody 的返回處理都可以用一個繼承ObjectMapper的類去處理 比如,過濾特殊字元,處理null(屬性,不是物件),針對返回的null物件(如果ajax對設定了datetyp:"json",不會回撥在success,而會在error中回撥),可以包裝