1. 程式人生 > >jquery 輸入框自動清除特殊字元

jquery 輸入框自動清除特殊字元

一:需要引入jquery

二:輸入框自動清除特殊字元

在輸入框輸入特殊字元時,清除掉特殊字元。

css:

.test-input{
				padding: 5px 10px;
				border-radius: 4px;
				border: 1px solid #999;
			}
html:
<input type="text" class="js-regexp-symbol test-input" name="" id="" value="" placeholder="請輸入使用者名稱" />
js:
/*
	 * 輸入框自動清除特殊字元
	 * 
	 * */
	(function(){
		/*******************************************
		* Description:
		* 禁止輸入危險字元
		* 如下:
		* + / \ ? ? % # & = ( ) ( ) { } " < > @ ! ! $ . , , 、 : : ; ; ¥ * ~ ` - —— _ ^  “ ” ‘ ’ …… 【 】 [ ]
		*中文輸入法時,使用的 ' 符號作為斷點,所以不能過濾此字元,否則中文輸入法有問題
		*
		*******************************************/
		$.fn.replaceOther = function () {
			this.bind("keypress", function (e) {
		        var keyCode = e ? e.which : event.keyCode;
		        if (keyCode == 60 || keyCode == 62) {
		            return false;
		        }
		    });
			//禁止拖放
		    this.bind("dragenter", function () {
		        return false;
		    });
		    this.on("keyup blur", function () {
		        var s = this.value;
		        if (s.indexOf("+") != -1 || s.indexOf("/") != -1 || s.indexOf("\\") != -1 || s.indexOf("?") != -1 || s.indexOf("?") != -1 || s.indexOf("%") != -1 || s.indexOf("#") != -1 || s.indexOf("&") != -1 || s.indexOf("=") != -1 || s.indexOf("(") != -1 || s.indexOf(")") != -1 || s.indexOf("(") != -1 || s.indexOf(")") != -1 || s.indexOf("{") != -1 || s.indexOf("}") != -1 || s.indexOf("\"") != -1 || s.indexOf("<") != -1 || s.indexOf(">") != -1 || s.indexOf("@") != -1 || s.indexOf("!") != -1 || s.indexOf("!") != -1 || s.indexOf("$") != -1 || s.indexOf(".") != -1 || s.indexOf(",") != -1 || s.indexOf(",") != -1 || s.indexOf("、") != -1 || s.indexOf(":") != -1 || s.indexOf(":") != -1 || s.indexOf(";") != -1 || s.indexOf(";") != -1 || s.indexOf("¥") != -1 || s.indexOf("*") != -1 || s.indexOf("~") != -1 || s.indexOf("`") != -1 || s.indexOf("-") != -1 || s.indexOf("——") != -1 || s.indexOf("_") != -1 || s.indexOf("^") != -1 || s.indexOf("“") != -1 || s.indexOf("”") != -1 || s.indexOf("‘") != -1 || s.indexOf("’") != -1 || s.indexOf("……") != -1 || s.indexOf("[") != -1 || s.indexOf("]") != -1 || s.indexOf("【") != -1 || s.indexOf("】") != -1){
		        	this.value = s.replace(new RegExp("[\\+,\\/,\\\\,\\?,\\?,\\%,\\#,\\&,\\=,\\(,\\),\\(,\\),\\{,\\},\\',\\\",\\<,\\>,\\@,\\!,\\!,\\$,\\.,\\,,\\、,\\:,\\:,\\;,\\;,\\¥,\\*,\\~,\\`,\\-,\\——,\\_,\\^,\\“,\\”,\\‘,\\’,\\……,\\【,\\】,\\[,\\],\\,]", "gm"), ""); 
		        }
		            
		    });
		};
		//繫結輸入框
		$('.js-regexp-symbol').replaceOther();
	})();
效果: