不怕不知道,就怕不知道 js轉義問題

2021-07-02 00:58:11 字數 1116 閱讀 7695

碰到乙個比較**的需求,由於前台產品顯示的需要,後台錄入的時候,需要注意很多點,比如這裡要輸入的標點符號必須是全形的,那裡輸入的標點符號必須是半形的。

如果是你拿到這種需求,你會怎麼辦呢?

這種東西,網上資料還是很多的,不過幾乎所有的都不能直接解決你的問題。我在做這個需求的時候,一看是的想法是:使用者輸入錯誤時,給他乙個提示。

這樣問題來了,使用者不斷的輸入,不斷的彈出alert(),體驗是很不友好的。

然後我就採取了第二種方案,使用者輸入過程中有誤時,我就在文字框後面加乙個提示框。提示使用者輸入錯誤,不過這個會改變後台輸入頁面的樣式。還要麻煩前端大哥該頁面,所以直接採用了第三種方式。

第三種方式很簡單,就是在使用者輸入時,自動修正。

需求要求:a【id為a】文字框輸入的所有標點,必須為全形;b【id為b】文字框輸入的所有標點必須為半形。

我在實現的過程中,遇到了乙個問題:自動校為半形時能夠全部成功(全形轉半形);而半形轉全形時,卻一直失敗!

弄了老半天,才解決問題。解決的過程其實很奇葩,當我看到mybatis的xml裡面的的時候,我才意識到,可能是js轉義的問題。

想了一想,為什麼弄了老半天才解決問題呢?

還是自己js這一塊兒的知識比較欠缺呀。

$(function()); 

$("form :input").blur(function()

if($("#a").val().length>0)

} if($(this).is("#b"))

if($("#b").val().length>0)

} }).keyup(function()).focus(function());

})

如上**:標點半形轉全形,需要轉義。至於原因,在js裡面"."代表的是匹配所有字元。所以我將輸入的內容replace時,它會將所有字元匹配為"。"。

其他的,大家可以自己查一下,了解一下就可以。

ps:學了一段時間jquery了,終於有點感覺了~~~

功能有大小,盡善盡美是標準。

不知道不知道

函式分析 希爾伯特 哥德爾不完備定理 哥德爾不完全性定理一舉粉碎了數學家兩千年來的信念。他告訴我們,真與可證是兩個概念。可證的一定是真的,但真的不一定可證。某種意義上,悖論的陰影將永遠伴隨著我們。無怪乎大數學家外爾發出這樣的感嘆 上帝是存在的,因為數學無疑是相容的 魔鬼也是存在的,因為我們不能證明這...

不知道不知道

函式分析 希爾伯特 哥德爾不完備定理 哥德爾不完全性定理一舉粉碎了數學家兩千年來的信念。他告訴我們,真與可證是兩個概念。可證的一定是真的,但真的不一定可證。某種意義上,悖論的陰影將永遠伴隨著我們。無怪乎大數學家外爾發出這樣的感嘆 上帝是存在的,因為數學無疑是相容的 魔鬼也是存在的,因為我們不能證明這...

知道與不知道

其實很多男孩子都不知道,女孩子在衝他們發火後自己卻轉過身不斷啜泣。其實很多男孩子都不知道,女孩子從來不會真正生他們的氣,因為她是真的喜歡他在乎他。其實很多男孩子都不知道,女孩子只會對她自己喜歡的男生嘮嘮叨叨,也只會對自己喜歡的人耍性子。你要知道,假若她不喜歡你,她根本不會來在乎你關心你,她是怕你做錯...