2016年8月3日 星期三

Firefox error: Unable to check input because the pattern is not a valid regexp: invalid identity escape in regular expression


在下大部分時間是用 chrome 開發網頁,
但身為網頁開發人員,
三不五時就要看看自已寫的東西在別的瀏覽器會不會有問題,
今天在 firefox 就中招了,
使用 input pattern attribute 時,
下 regular expression 習慣性會將特殊符號加上 escape ( \ ),
這樣的寫法在 chrome 是沒問題的,如下:

<input type="text" class="form-control" required
   pattern="[\-\_]"
   >

但在 firefox 卻拋出錯誤訊息:
Unable to check <input pattern='[\-\_]'> because the pattern is not a valid regexp: invalid identity escape in regular expression


研究後發現,在 input pattern 不需要做 escape ,在 chrome, firefox 都 work,
修改後,如下:
<input type="text" class="form-control" required
   pattern="[-_]"
   >





沒有留言:

張貼留言