亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

asp.net結合html,javascript實現無刷新跨域數據提交

2019-11-18 16:51:55
字體:
來源:轉載
供稿:網友

需求:

A域有頁面a.html,其中有iframe包含B域的頁面b.html,現在要通過a.html上的一個按鈕,來把a.html頁面上一個文本框的值傳遞到b.html頁面的文本框。

注:這里b.html是html網頁,不能接收其他網站post過來的值,所以不能用直接post的方法來傳值,但是,如果接收頁面是b.aspx或者b.asp 呢,那不是可以直接post了么?答案是肯定的,確實可以,但是b.asp或b.aspx必須要刷新,才可以,如何能不刷新的動態改變接收頁的元素或者值呢?(IE的本地項目是可以實現跨域訪問的,但是外網的跨域訪問默認是被拒絕的。Firefox本地項目以及外網的跨域訪問都是被拒絕的。)

原理:

瀏覽器禁止跨域數據訪問,但是瀏覽器并沒有禁止跨域跨框架的post傳值。我們可以在A域,post到B域的某個頁面的框架中,然后通過B域的框架頁來實現本域內的數據訪問。這其實是html應用中的一個小技巧,并沒有用到其他高深的知識就實現了跨域的數據提交。

方法:

在B域中添加兩個頁面,來實現跨域的數據訪問,post.aspx和main.aspx。

頁面關系如下,A域的a.html包含一個框架,框架頁地址是B域的main.aspx,main.aspx是一個框架集包含兩個框架,(frmMain)b.html 和(frmPost)post.aspx.

A域的a.html:

<form action="

<input id="cmd" type="text" size="20">

<input type="submit">

</form>

<iframe src=">

B域的main.aspx:

<frameset rows="*,0" frameborder="no" border="0" framespacing="0">

<frame src="b.html" name="frmMain">

<frame src="post.aspx" name="frmPost">

</frameset>

 

我們先把要傳遞到B域的數據保存到a.html的form中,然后post到B域的post.aspx.

這時post.aspx接收到值,然后執行本域內的父框架訪問b.html。

string cmd = Request.Form["cmd"];

if (null != cmd && string.Empty != cmd)

{

        Response.Write("<script language=/"javaScript/" for=/"window/" event=/"onload/"> if (parent && parent.frames[/"frmMain/"]) { 這里添加控制b.html的執行代碼} </script> ");

}

不難發現,這里利用跳躍跨frame(即中間躍過了一層frame)的方法,來實現跨域的數據訪問。即post到frame的子frame里面。

后記:

這個例子不過是一些特殊的情況下跨域訪問的解決方案,也許對你會有所幫助。因為方法簡單,應用也就有很多局限性。(不過偶倒是覺得這樣很象Ajax哦,頁面沒有刷新,同樣完成了一次服務端的數據處理^o^)。

相關網文資料:

web應用的跨域訪問解決方案

做過跨越多個網站的Ajax開發的朋友都知道,如果在A網站中,我們希望使用Ajax來獲得B網站中的特定內容,如果A網站與B網站不在同一個域中,那么就出現了跨域訪問問題。Ajax的跨域訪問問題是現有的Ajax開發人員比較常遇到的問題。

IE對于跨域訪問的處理是,彈出警告框,提醒用戶。如果用戶將該網站納入可信任網站,或者調低安全級別,那么這個問題IE就不會在提醒你。

FireFox等其它非微軟的瀏覽器遇到跨域訪問,則解決方案統一是拒絕訪問。

有人說,IE是主流瀏覽器,只要它能正常使用就好了。此言差已,IE雖然能夠處理,但是是有前提的,要么用戶不厭其煩地在頁面彈出警告框之后點擊是(點擊否就不執行該Ajax調用了),要么用戶將該網站納入可信任站點。這兩種做法,在企業管理系統的應用中倒是比較常見,因為系統管理員可以以行政手段保證用戶的行為。但是對于互聯網上的網站或者門戶開發,這種做法則不行。

最近遇到了這個問題,需要在跨域訪問結束之后完成使主窗口出現一些特效,搜索了一些資料,通過不斷嘗試以及在不同瀏覽器中進行兼容性測試,找到了幾個可行的方案:

1、Web代理的方式。即用戶訪問A網站時所產生的對B網站的跨域訪問請求均提交到A網站的指定頁面,由該頁面代替用戶頁面完成交互,從而返回合適的結果。此方案可以解決現階段所能夠想到的多數跨域訪問問題,但要求A網站提供Web代理的支持,因此A網站與B網站之間必須是緊密協作的,且每次交互過程,A網站的服務器負擔增加,且無法代用戶保存session狀態。

2、on-Demand方式。MYMSN的門戶就用的這種方式,不過MYMSN中不涉及跨域訪問問題。動態控制script標記的生成,通過修改script標記的src屬性完成對跨域頁面的調用。此方案存在的缺陷是,script的src屬性完成該調用時采取的方式時get方式,如果請求時傳遞的字符串過大時,可能會無法正常運行。不過此方案非常適合聚合類門戶使用。

3、iframe方式。查看過醒來在javaeye上的一篇關于跨域訪問的帖子,他提到自己已經用iframe的方式解決了跨域訪問問題。數據提交跟獲取,采用iframe這種方式的確可以了,但由于父窗口與子窗口之間不能交互(跨域訪問的情況下,這種交互被拒絕),因此無法完成對父窗口效果的影響。

(偶找到了該文,補充一下地址:http://www.javaeye.com/topic/15641

4、用戶本地轉儲方式:IE本身依附于windows平臺的特性為我們提供了一種基于iframe,利用內存來“繞行”的方案,即兩個window之間可以在客戶端通過windows剪貼板的方式進行數據傳輸,只需要在接受數據的一方設置Interval進行輪詢,獲得結果后清除Interval即可。FF的平臺獨立性決定了它不支持剪貼板這種方式,而以往版本的FF中存在的插件漏洞又被fixed了,所以FF無法通過內存來完成暗渡陳倉。而由于文件操作FF也沒有提供支持(無法通過Cookie跨域完成數據傳遞),致使這種技巧性的方式只能在IE中使用。

5、我自己用于解決這類問題的方式:結合了前面幾種方式,在訪問A網站時,先請求B網站完成數據處理,再根據返回的標識來獲得所需的結果。這種方法的缺點也很明顯,B網站的負載增大了。優點,對session也實現了保持,同時A網站與B網站頁面間的交互能力增強了。最重要的一點,這種方案滿足了我的全部需要。

總結一下,以上方案中可選擇的情況下,我最推薦on-Demand方式,在不需要提交大量數據的情況下,這種方式能夠解決您的大部分問題。

web應用的跨域訪問解決方案 地址:http://www.newbooks.com.cn/info/37166.html

http://www.49028c.com/lgamoy/archive/2006/11/23/569633.html


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91av视频在线播放| 国产精品视频免费观看www| 国产精品高潮粉嫩av| 精品亚洲夜色av98在线观看| 欧美在线视频一区| 久久精品91久久香蕉加勒比| 亚洲国产精品福利| 国产精品女人网站| 国产精品高清在线| 亚洲成人免费在线视频| 国产在线视频不卡| 国产精品视频午夜| 午夜精品一区二区三区在线视频| www高清在线视频日韩欧美| 97碰碰碰免费色视频| 亚洲视频在线看| 国产精品白丝jk喷水视频一区| 国产亚洲精品美女久久久久| 久久久精品国产一区二区| 亚洲美女又黄又爽在线观看| 狠狠色狠狠色综合日日五| 国产精品女人网站| 岛国视频午夜一区免费在线观看| 亚洲福利视频在线| 亚洲精品永久免费精品| 91黑丝高跟在线| 91黑丝高跟在线| 亚洲男人天堂2023| 欧美午夜性色大片在线观看| www.午夜精品| 国产成人一区二区| 久久99久国产精品黄毛片入口| 日韩精品亚洲精品| 亚洲欧洲一区二区三区在线观看| 亚洲欧美日韩中文在线制服| 国产婷婷成人久久av免费高清| 色偷偷av一区二区三区乱| 欧美视频专区一二在线观看| 538国产精品一区二区免费视频| 国产欧美一区二区三区四区| 最新国产精品拍自在线播放| 91av视频导航| 亚洲变态欧美另类捆绑| 国产香蕉精品视频一区二区三区| 国产99视频精品免视看7| 国产亚洲成精品久久| 91久久精品日日躁夜夜躁国产| 精品久久久久久久久国产字幕| 国产精品免费久久久久久| 亚洲人成电影在线观看天堂色| 成人激情电影一区二区| 欧美国产日韩免费| 亚洲欧洲激情在线| 亚洲成人av资源网| 亚洲人成伊人成综合网久久久| 欧美裸体xxxxx| 精品国产欧美一区二区三区成人| 亚洲第一网中文字幕| 97视频com| 欧美高清videos高潮hd| 久久国产色av| 最近2019中文字幕大全第二页| 国产成人一区二| 亚洲国产天堂网精品网站| 美女久久久久久久| 黄色一区二区三区| 久久成人精品电影| 91精品国产乱码久久久久久蜜臀| 欧美超级免费视 在线| 亚洲护士老师的毛茸茸最新章节| 亚洲欧美精品一区| 国产日韩欧美在线视频观看| 另类专区欧美制服同性| 日本免费一区二区三区视频观看| 国产精品久久久久9999| 色婷婷久久av| 国产精品一区二区电影| 91精品在线影院| 69av成年福利视频| 国产网站欧美日韩免费精品在线观看| 2019中文字幕在线免费观看| 国产综合在线看| 日韩高清有码在线| 久久人人爽人人爽人人片av高清| 久久精品在线视频| 91精品久久久久久久久久久| 亚洲一区二区三| 亚洲国产精品va| 亚洲91精品在线| 久久免费精品视频| 国产精品欧美久久久| 自拍亚洲一区欧美另类| 欧美性猛交xxxx乱大交极品| 国产精品视频自在线| 久久久久国产精品免费| 91午夜理伦私人影院| 91福利视频网| 国产成人激情小视频| 日本国产一区二区三区| 久久免费视频这里只有精品| 欧美巨乳美女视频| 亚洲自拍在线观看| 久久伊人精品天天| 亚洲美女又黄又爽在线观看| 亚洲第一网中文字幕| 97香蕉超级碰碰久久免费软件| 国产91精品青草社区| 欧美最猛黑人xxxx黑人猛叫黄| 日韩中文字幕免费视频| 欧美日韩中国免费专区在线看| 久久精品亚洲一区| 国产激情视频一区| 国产日韩精品在线播放| 国产成人一区二区三区| 国产97在线|亚洲| 日韩亚洲欧美中文高清在线| 日韩在线中文字幕| 国产一区二区三区免费视频| 国产不卡在线观看| 最好看的2019的中文字幕视频| 亚洲精品资源美女情侣酒店| 尤物精品国产第一福利三区| 2018日韩中文字幕| 大荫蒂欧美视频另类xxxx| 欧美成人在线免费视频| 久久精品亚洲一区| 日韩av在线天堂网| 91精品久久久久久久久久久| 成人乱人伦精品视频在线观看| 欧美日韩久久久久| 日韩欧美亚洲范冰冰与中字| 欧美乱人伦中文字幕在线| 欧美日韩中文在线| 久久精品国产清自在天天线| 亚洲精品日韩欧美| 国产精品自在线| 日本国产精品视频| 久久好看免费视频| 国产欧美最新羞羞视频在线观看| 国产一区二区美女视频| 国产成人精品国内自产拍免费看| 国产精品久久久久久中文字| 欧美孕妇与黑人孕交| 日韩一区二区久久久| 欧美精品videofree1080p| 欧美精品久久久久久久久久| 国产v综合ⅴ日韩v欧美大片| 国产精品777| 热久久美女精品天天吊色| 国内免费久久久久久久久久久| 欧美激情成人在线视频| 国产精品高潮粉嫩av| 日韩欧美精品网站| 日韩在线视频免费观看高清中文| 性欧美长视频免费观看不卡| 久久男人资源视频| 国产精品亚洲视频在线观看| 日韩美女视频中文字幕| 色妞色视频一区二区三区四区| 日韩av免费看| 午夜精品福利视频| 91欧美视频网站| 91黑丝在线观看| 亚洲国产成人精品久久|