js使用post 方式打開新窗口
js中一般新打開窗口很簡(jiǎn)單直接window.open(url);就可以了,
但是由于我希望傳遞參數(shù)到服務(wù)端,而且參數(shù)看起來(lái)很長(zhǎng)一串,而且get方式的提交參數(shù)長(zhǎng)度是有限制的,因此我有以下需求:
1,js中實(shí)現(xiàn)post提交
2,返回的頁(yè)面在新窗口顯示
首先我是這么做的:
$.ajax({
type: "POST",
url: '${contextPath}/analyse/detail.do',
data: {carNum :carNum,ids:refIds},
success: function(str_response) { var obj = window.open("about:blank");
obj.document.write(str_response);
}
});
通過(guò)jQuery ajax提交,返回的數(shù)據(jù)寫在新的頁(yè)面中,但是由于瀏覽器的會(huì)攔截自動(dòng)彈出的窗口,這樣還需用戶自己解除攔截,用戶體驗(yàn)很差,
然后我又通過(guò)模擬form表單的提交來(lái)實(shí)現(xiàn)
function post(URL, PARAMS) { var temp_form = document.createElement("form");
temp_form .action = URL;
temp_form .target = "_blank";
temp_form .method = "post";
temp_form .style.display = "none"; for (var x in PARAMS) { var opt = document.createElement("textarea");
opt.name = x;
opt.value = PARAMS[x];
temp_form .appendChild(opt);
}
document.body.appendChild(temp);
temp_form .submit();
}
注意:如需新打開窗口 form 的target屬性要設(shè)置為'_blank'
然后請(qǐng)求post('${contextPath}/analyse/detail.do',{carNum :carNum,ids:refIds});就可以了
- JS實(shí)現(xiàn)可縮放、拖動(dòng)、關(guān)閉和最小化的浮動(dòng)窗口完整實(shí)例
- JS實(shí)現(xiàn)窗口加載時(shí)模擬鼠標(biāo)移動(dòng)的方法
- JS實(shí)現(xiàn)仿QQ聊天窗口抖動(dòng)特效
- JS+CSS實(shí)現(xiàn)Div彈出窗口同時(shí)背景變暗的方法
- JS+CSS實(shí)現(xiàn)帶關(guān)閉按鈕DIV彈出窗口的方法
- JS打開新窗口防止被瀏覽器阻止的方法
- js 模式窗口(模式對(duì)話框和非模式對(duì)話框)的使用介紹
- js操作模態(tài)窗口及父子窗口間相互傳值示例
- JS實(shí)現(xiàn)彈出浮動(dòng)窗口(支持鼠標(biāo)拖動(dòng)和關(guān)閉)實(shí)例詳解
相關(guān)文章
JS實(shí)現(xiàn)簡(jiǎn)單獲取最近7天和最近3天日期的方法
這篇文章主要介紹了JS實(shí)現(xiàn)簡(jiǎn)單獲取最近7天和最近3天日期的方法,涉及javascript針對(duì)日期與時(shí)間的相關(guān)數(shù)值運(yùn)算與轉(zhuǎn)換操作技巧,需要的朋友可以參考下2018-04-04
JS 學(xué)習(xí)總結(jié)之正則表達(dá)式的懶惰性和貪婪性
這篇文章主要介紹了JS 學(xué)習(xí)總結(jié)之正則表達(dá)式的懶惰性和貪婪性的相關(guān)資料,需要的朋友可以參考下2017-07-07
詳解JS中定時(shí)器setInterval和setTImeout的this指向問(wèn)題
在js中setTimeout和setInterval都是用來(lái)定時(shí)的一個(gè)功能,下面這篇文章主要給介紹了JS中setInterval和setTImeout的this指向問(wèn)題,文中通過(guò)示例介紹的很詳細(xì),有需要的朋友可以參考借鑒,一起來(lái)看看吧。2017-01-01
js彈性勢(shì)能動(dòng)畫之拋物線運(yùn)動(dòng)實(shí)例詳解
這篇文章主要為大家詳細(xì)介紹了js彈性勢(shì)能動(dòng)畫之拋物線運(yùn)動(dòng)的制作方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
js事件監(jiān)聽機(jī)制(事件捕獲)總結(jié)
添加事件的js方法也很多,有直接加到頁(yè)面結(jié)構(gòu)上的,有使用一些js事件監(jiān)聽的方法,由于各個(gè)瀏覽器對(duì)事件冒泡事件監(jiān)聽的機(jī)制不同2014-08-08
關(guān)于原生js中bind函數(shù)的簡(jiǎn)單實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇關(guān)于原生js中bind函數(shù)的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
javascript支持區(qū)號(hào)輸入的省市二級(jí)聯(lián)動(dòng)下拉菜單
javascript支持區(qū)號(hào)輸入的省市二級(jí)聯(lián)動(dòng)下拉菜單...2007-05-05
通過(guò)js將26個(gè)英文字母按順序依次排列方式
這篇文章主要介紹了通過(guò)js將26個(gè)英文字母按順序依次排列方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10

