成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Javascript操作img解決網(wǎng)站提交數(shù)據(jù)異常問題

開發(fā) 前端
這里和大家分享一下使用Javascript巧妙操作img做網(wǎng)站異常提交數(shù)據(jù)處理,要實現(xiàn)表單提交數(shù)據(jù)到服務器A,如果服務器A訪問不了就提交到服務器B功能,這里向大家提供了一個簡潔實用的方法。

本文和大家重點討論一下使用Javascript巧妙操作img做網(wǎng)站異常提交數(shù)據(jù)處理,通過兩步就可以實現(xiàn)表單提交數(shù)據(jù)到服務器A,如果服務器A訪問不了就提交到服務器B功能,具體內(nèi)容請看下文詳細介紹。

使用Javascript巧妙操作img做網(wǎng)站異常提交數(shù)據(jù)處理

本文要做的功能效果如下:

表單提交數(shù)據(jù)到服務器A,如果服務器A訪問不了就提交到服務器B

要使用JS實現(xiàn)上面的所講功能,要考慮跨域問題,有使用過ajax的xmlhttp方法檢測遠程文件不存在返回404的方案,這種方案在測試時由于ajax存在跨域問題,所以就不采用了,也使用過img的onerror與onload事件這種方案來處理,但是這種方案會造成提交表單IE會彈窗,瀏覽器又攔截了彈窗,所以又不采用此方案,哪怎么辦呢?搞得挺久,最終還是利用js操作img來處理完成。
也許說了這么多,你還看不懂我所表達的意思,暫不管這些,下面看代碼你就清楚了。

第1步、創(chuàng)建一個test.htm文件,內(nèi)容如下:

Code

  1. <html> 
  2. <scriptsrcscriptsrc="getMessage.js"></script> 
  3. <body> 
  4. <formnameformname="mfrm"> 
  5. <inputidinputid="SendType"type="hidden"  
  6. value="s129"name="SendType"/> 
  7. <inputidinputid="title"name="title"/> 
  8. <inputonClickinputonClick="returngetMessage(this.form);"
  9. type="button"name="imageField"/> 
  10. </form> 
  11. </body> 
  12. </html> 

第2步:創(chuàng)建getMessage.js文件,內(nèi)容如下:

Code

  1. functiongetMessage(frm){  
  2. varsendtype=frm.SendType;  
  3. vartitle=frm.title;  
  4. //創(chuàng)建模擬form表單  
  5. varobjfrm=document.createElement("form");  
  6. varobjsendtype=document.createElement("input");  
  7. varobjtitle=document.createElement("input");  
  8. //利用操作img來處理目標接收數(shù)據(jù)的服務器頁面  
  9. varobjImg=document.createElement("img");  
  10. objImg.id="TmpSmsImg";  
  11. objImg.src="http://www.xueit.com/images/logo.gif";
  12. //默認服務器A圖片  
  13. document.body.appendChild(objImg);  
  14. varimgWidth=document.getElementById("TmpSmsImg").width;  
  15. document.body.removeChild(objImg);  
  16.  
  17. if(imgWidth=="210")//如果圖片存在,
  18. 就可以獲取到寬度等于預定值,默認接收數(shù)據(jù)的服務器A的頁面  
  19. {  
  20. objfrm.action="http://www.xueit.com/testGet.aspx";  
  21. }  
  22. else//圖片不存在,另一臺接收數(shù)據(jù)的服務器B的頁面  
  23. {  
  24. objfrm.action="http://demo.xueit.com/testGet.aspx";  
  25. }  
  26.  
  27. //下面是表單的屬性  
  28. objfrm.id="TmpForm";  
  29. objfrm.name="TmpForm";  
  30. objfrm.target="_blank";  
  31. objfrm.method="post";  
  32. objfrm.style.display="none";  
  33.  
  34. objsendtype.type="hidden";  
  35. objsendtype.name="SendType";  
  36. objsendtype.value=Utf2Gb(sendtype);  
  37.  
  38. objtitle.type="hidden";  
  39. objtitle.name="title";  
  40. objtitle.value=Utf2Gb(title);  
  41.  
  42. //附加  
  43. objfrm.appendChild(objsendtype);  
  44. objfrm.appendChild(objtitle);  
  45.  
  46. //表單提交  
  47. document.body.appendChild(objfrm);  
  48. objfrm.submit();  
  49. document.body.removeChild(objfrm);  
  50.  
  51. //clearobj  
  52. objtitle=null;  
  53. objsendtype=null;  
  54. objfrm=null;  
  55.  
  56. }  
  57.  
  58. //處理編碼函數(shù)  
  59. functionUtf2Gb(str)  
  60. {  
  61. if(str!=null&&str!="")  
  62. str=escape(str);  
  63. returnstr;  
  64. }  
  65.  

 以上代碼主要是利用img圖片,如果圖片所在服務器正常運行的話,圖片會加載到當前頁面的body區(qū)域中,所以再獲取這個img圖片的寬度,如果寬度等于你知道的預定值,就代表默認服務器正常,否則代碼服務器A不正常,就把數(shù)據(jù)提交到服務器B處理。

【編輯推薦】

  1. Javascript中split函數(shù)用法指導手冊
  2. 深入剖析JavaScript和Java的區(qū)別
  3. JavaScript數(shù)組元素刪除問題解決方案
  4. JavaScript對象的定義及創(chuàng)建實例
  5. 解析Javascript中replace()方法使用

 

責任編輯:佚名 來源: lianglong.org
相關推薦

2010-09-30 15:10:12

Javascriptimg

2009-11-09 10:10:13

WCF異常

2024-05-08 16:44:40

TCPRST網(wǎng)絡協(xié)議

2022-06-09 09:20:41

ahooksaxios

2024-03-27 07:55:58

SpringRedis海量

2010-01-06 14:24:40

Javascript解

2023-09-17 23:23:14

Java異常堆棧

2025-03-06 08:37:01

2013-02-26 09:51:31

Windows 8應用異常問題

2010-04-14 14:55:29

Unix操作系統(tǒng)

2010-04-09 16:45:42

Unix操作系統(tǒng)

2010-08-27 09:06:49

F#

2010-05-19 10:18:23

svn 403 for

2010-09-07 14:33:30

DIVmargin

2010-09-06 10:14:55

2010-05-05 10:25:24

Unix操作系統(tǒng)

2010-04-16 17:38:25

2009-06-30 17:16:43

jsp網(wǎng)站開發(fā)

2023-12-26 14:28:08

JavaScript開發(fā)

2025-03-31 08:00:00

JavaScriptAPI開發(fā)
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黄网站免费在线 | 久久久久国产一区二区三区四区 | 国产精品免费视频一区 | 国产视频日韩 | 9久久精品 | 中文字幕国产 | 伊人伊人| 久久只有精品 | 伊人免费在线观看高清 | 欧美激情网站 | 91av免费观看 | 欧美日韩中文字幕在线 | 夜夜草 | 亚洲精品二区 | 久久久中文 | 中文字幕av网站 | 精品亚洲一区二区三区四区五区 | 日韩精品一区二区三区免费观看 | 亚洲综合国产 | 久草.com| 亚洲 欧美 日韩 在线 | 中文字幕在线第一页 | 亚洲精品丝袜日韩 | 日韩毛片网| 亚洲精品一级 | 999国产精品视频免费 | 我爱操| 黄色免费网站在线看 | 亚洲欧美视频 | 91av在线视频观看 | 欧美激情视频一区二区三区在线播放 | www.99热这里只有精品 | 欧美一级欧美一级在线播放 | h视频在线看 | xnxx 日本免费 | 国产精品成人av | 一区二区三区中文 | 中文字字幕一区二区三区四区五区 | 91在线一区二区 | 欧美久久天堂 | 久久久精品天堂 |