婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 奇怪的回車換行問題

奇怪的回車換行問題

熱門標簽:嘟聲的電銷機器人 滄州智能外呼系統收費 地圖標注和圖片標注 湖北穩定外呼系統 洛陽便宜外呼系統廠家 醫院地圖標注 忻州外呼系統接口對接 語音平臺系統 電銷機器人怎么收費
在類unix中,是\n (0x0A)。以為沒有什么大的問題,沒想到,這次開發一個小程序,卻讓我對這個問題大為頭痛。

首先發現這個問題是這樣的:

我的這個程序采用的是Extjs+php的方式,通過ajax進行通訊。其中有個頁面,如圖:

兩個文本框,一個text,一個textarea,當textarea中含有回車換行的時候,會出現腳本錯誤。后面發現是因為如果服務器端返回的字符串換行了,會造成js解析出現錯誤,可見js在解析json數據時候的語法還是和在本地定義的字符串變量的語法一致的。一個字符串不能多行,有回車換行的時候需要轉義符號:\n (\r\n)。
不過這個并不是我要說明的問題,我要說明的問題是,當我在解決這個問題的時候,抓包分析的時候,發現一個有趣的現象,就是發現瀏覽器發送到服務器對回車換行的編碼不一致。
例如上圖中的字符串在通過extjs中的
復制代碼 代碼如下:

Ext.Ajax.request({
url:'CatMan.php',
form:this.FORM_NAME,
scope:this,
callback:function(o,s,r){
var retObj=Ext.decode(r.responseText);
if(retObj.success){
alert('保存成功!');
}
}
});

進行保存時候,發現發送到服務器的編碼是這樣的:
catdesc=%E6%9E%97%0A%0A%E5%B0%910A%0A%0Aa%E5%8D%8E
注意其中的紅色標記的%0A,這是\n的編碼。\r的編碼竟然不見了。
然后我如果采用form submit直接提交,卻發現編碼是:
%E6%9E%97%0D%0A%0D%0A%E5%B0%91%0D%0A%0D%0A%0D%0Aa%E5%8D%8E
發現\r(%0D)的編碼是在的。
(以上為在IE9中測試結果。)
難道是ExtJs的問題?
如果分析Extjs的源代碼,找到取form值得地方。如下:
復制代碼 代碼如下:

serializeForm : function(form) {
debugger
var fElements = form.elements || (document.forms[form] || Ext.getDom(form)).elements,
hasSubmit = false,
encoder = encodeURIComponent,
name,
data = '',
type,
hasValue;
Ext.each(fElements, function(element){
name = element.name;
type = element.type;
if (!element.disabled name) {
if (/select-(one|multiple)/i.test(type)) {
Ext.each(element.options, function(opt){
if (opt.selected) {
hasValue = opt.hasAttribute ? opt.hasAttribute('value') : opt.getAttributeNode('value').specified;
data += String.format("{0}={1}", encoder(name), encoder(hasValue ? opt.value : opt.text));
}
});
} else if (!(/file|undefined|reset|button/i.test(type))) {
if (!(/radio|checkbox/i.test(type) !element.checked) !(type == 'submit' hasSubmit)) {
data += encoder(name) + '=' + encoder(element.value) + '';
hasSubmit = /submit/i.test(type);
}
}
}
});
return data.substr(0, data.length - 1);
},

可以發現extjs采用的是js中的encodeURIComponent函數進行值的編碼。
難道是encodeURIComponent的問題?
搜索網絡,發現一篇博文中提到這個問題,見http://www.yeahxj.com/2011/11/07/enter-code-for-all-browser/ (回車符 \r\n 在各個瀏覽器中無恥的表現)
于是我在ie6,ie8,ie9中分別進行了測試,發現果然存在這個問題。
總結:
這個問題雖然小,但是在某些場合卻會讓人和頭痛,這也是搞計算機程序設計人員的悲哀,大量的不兼容,造成很多程序出現各種各樣奇怪的問題。例如這個小問題可能造成一個結果,例如,我這個程序,需要在前臺顯示內容的時候保留回車換行。這種一般有兩種處理方法,一種是采用pre>標簽,但是這個標簽用起來很不方便的,嘗試發現格式變化不太好控制。另外一種方法就是將回車換行變為br />標記。我就是采用的這種方法,剛開始我寫的正規表達式是/\r\n/,結果發現什么都沒匹配到,后面我就改成/[\r\n]/但是這種造成的問題就是在ie6,7,8中將會多出一行來。最后為了統一處理,我改為先替換/\r\n/組合,然后再替換/\n/。問題得到解決。
** 本人原創文章,轉摘請保留本段內容,萬分感謝!
** microdreamsoft(Lin Shaohua):
** 由于本人水平有限,歡迎各位高手指正。
您可能感興趣的文章:
  • 通過Java正則表達式去掉SQL代碼中回車換行和多余空格
  • windows 中 \r\n 區別于 類unix中的\n 疑問理解(crlf回車換行)
  • PHP 清除HTML代碼、空格、回車換行符的函數
  • 把textarea中字符串里含有的回車換行替換成lt;brgt;的javascript代碼
  • Js 回車換行處理的辦法及replace方法應用

標簽:日照 宜賓 巴彥淖爾 防城港 定州 內蒙古 山南 96

巨人網絡通訊聲明:本文標題《奇怪的回車換行問題》,本文關鍵詞  奇,怪的,回車,換行,問題,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《奇怪的回車換行問題》相關的同類信息!
  • 本頁收集關于奇怪的回車換行問題的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    免费av网站大全久久| 国产91精品一区二区麻豆亚洲| 中文字幕av不卡| 久久国内精品自在自线400部| 欧美视频在线一区二区三区| 精品国产污污免费网站入口| 日本成人中文字幕| 欧美一区二区三区人| 亚洲影院在线观看| 在线影院国内精品| 亚洲综合色婷婷| 在线视频中文字幕一区二区| 亚洲精品日韩专区silk| 欧美私模裸体表演在线观看| 亚洲国产日韩av| 欧美美女视频在线观看| 亚洲第一成人在线| 国产高清精品网站| 精品国产乱码久久久久久闺蜜| 日韩电影免费在线看| 精品国产三级电影在线观看| 国产91丝袜在线播放| 亚洲欧洲99久久| 91激情五月电影| 日本美女一区二区三区视频| 日韩一级免费观看| 成人小视频免费在线观看| 一区二区中文字幕在线| 波多野结衣在线一区| 久久久高清一区二区三区| 国产成人免费网站| ●精品国产综合乱码久久久久| 91搞黄在线观看| 精品亚洲成av人在线观看| 国产精品不卡一区二区三区| 欧美午夜电影网| 捆绑紧缚一区二区三区视频| 久久久91精品国产一区二区三区| 91色在线porny| 麻豆精品久久久| 亚洲男人的天堂在线观看| 日韩欧美国产系列| 91在线视频免费91| 精品一区二区三区在线视频| 国产精品久久久久影院老司| 欧美久久久久久久久中文字幕| 国产成人免费在线视频| 天天亚洲美女在线视频| 国产精品乱码一区二区三区软件| 欧美日本一区二区三区四区 | 色婷婷久久久综合中文字幕 | 亚洲三级在线免费观看| 欧美xxx久久| 欧美欧美午夜aⅴ在线观看| 成a人片国产精品| 紧缚奴在线一区二区三区| 欧美一区二区成人6969| 99久久精品国产观看| 高清成人在线观看| 国产精品 日产精品 欧美精品| 久久综合色播五月| 99国产精品视频免费观看| 色综合久久中文综合久久牛| 国产成人免费视频网站高清观看视频 | 欧美国产激情一区二区三区蜜月| 国产激情视频一区二区在线观看| 久久成人av少妇免费| 亚洲自拍欧美精品| 夜夜嗨av一区二区三区网页| 中文字幕乱码亚洲精品一区 | 最新国产の精品合集bt伙计| 久久综合久久综合亚洲| 精品国产免费一区二区三区四区 | 色综合天天性综合| 亚洲精选视频在线| 国产精品乱码人人做人人爱| 国产精品成人在线观看| 国产欧美一区二区精品忘忧草| 久久欧美中文字幕| 欧美激情一区二区三区四区 | 午夜久久久久久| 一区二区视频免费在线观看| 中文字幕一区二区日韩精品绯色| 日本一二三不卡| 国产婷婷一区二区| 国产精品久久777777| 中文字幕亚洲欧美在线不卡| 亚洲欧美日韩电影| 亚洲线精品一区二区三区 | 国产精品视频观看| 日韩亚洲欧美在线观看| 国产日产欧美一区二区视频| 国产午夜精品一区二区| 中文字幕在线不卡一区二区三区| 自拍偷自拍亚洲精品播放| 一级女性全黄久久生活片免费| 一卡二卡三卡日韩欧美| 精品一区二区在线看| 色婷婷精品大视频在线蜜桃视频| 色爱区综合激月婷婷| 精品欧美黑人一区二区三区| 亚洲国产经典视频| 日日摸夜夜添夜夜添精品视频 | 日日欢夜夜爽一区| 国产成人精品网址| 欧美精品久久久久久久多人混战 | 欧美国产日产图区| 亚洲成人在线免费| 麻豆91精品91久久久的内涵| av亚洲精华国产精华精| 欧美三级日韩三级国产三级| 精品sm在线观看| 亚洲在线成人精品| 成人激情开心网| 欧美一级精品在线| 亚洲一区在线电影| 成人午夜碰碰视频| 日韩亚洲欧美综合| 亚洲1区2区3区视频| 粉嫩欧美一区二区三区高清影视| 欧美肥妇bbw| 一区二区三区中文字幕电影 | 3d动漫精品啪啪| 亚洲色欲色欲www在线观看| 久久成人免费网站| 欧美一级搡bbbb搡bbbb| 亚洲四区在线观看| 激情五月激情综合网| 欧美精品久久久久久久久老牛影院| 成人欧美一区二区三区小说 | 日韩欧美国产麻豆| 亚洲成人精品一区二区| 99久久免费精品| 久久色在线视频| 老司机午夜精品| 日韩无一区二区| 日韩电影一二三区| 884aa四虎影成人精品一区| 亚洲一卡二卡三卡四卡无卡久久| 99re6这里只有精品视频在线观看| 国产日本亚洲高清| 国产91精品一区二区| 国产日韩欧美激情| 国产91高潮流白浆在线麻豆| 日韩欧美美女一区二区三区| 日本美女一区二区三区视频| 日韩视频永久免费| 精品一区二区三区视频在线观看| 3751色影院一区二区三区| 一区二区三区91| 欧美日韩国产高清一区| 午夜久久电影网| 日韩午夜中文字幕| 国产91丝袜在线播放九色| 国产精品国产成人国产三级| 91在线精品秘密一区二区| 亚洲精品视频观看| 欧美一级高清大全免费观看| 开心九九激情九九欧美日韩精美视频电影 | 日本一区二区三区国色天香 | 久久99精品国产麻豆婷婷| 精品国产一区二区三区久久影院| 国产999精品久久久久久| 亚洲视频免费在线观看| 欧美嫩在线观看| 精品一区二区三区在线播放视频| 久久影院午夜论| 99久久精品国产一区| 日本色综合中文字幕| 久久综合99re88久久爱| av不卡免费在线观看| 亚洲妇熟xx妇色黄| 久久免费国产精品| 欧美在线一二三| 国产麻豆精品久久一二三| 亚洲日本va午夜在线影院| 555夜色666亚洲国产免| 成人福利视频网站| 免费黄网站欧美| 中文字幕在线不卡国产视频| 欧美精品少妇一区二区三区| 成人深夜视频在线观看| 亚洲一区二区偷拍精品| 日韩精品资源二区在线| 色综合久久中文字幕| 久久国产乱子精品免费女| 亚洲精品视频在线| 国产性做久久久久久| 欧美一区二区在线不卡| 成人一级黄色片| 久久99久久99| 亚洲欧美日韩国产另类专区| 国产色婷婷亚洲99精品小说| 3d动漫精品啪啪1区2区免费 | 国产九九视频一区二区三区| 亚洲一二三区在线观看| 国产女主播一区| 日韩精品一区二区三区老鸭窝| 91久久人澡人人添人人爽欧美| 成人午夜av影视|