extjs的textfield禁止输入某些字符

这个问题困扰了我整整一天,之前使用网上的重写textfield添加侦听,然后处理keypress事件(http://extjs.com/forum/showthread.php?t=17532),结果发现效果不甚理想,而且需要在公共js中写一段代码,各自的textfield中同样也需要写一段代码。最后参考了numberfield源码,才很好的解决了这个问题:

 

initEvents : function() {
	var keyPress = function(e){
		var blockchars = ' ';
		var c = e.getCharCode();
		if(blockchars.indexOf(String.fromCharCode(c)) != -1){
			e.stopEvent();
		}
	};
	this.el.on("keypress", keyPress, this);
}

 

这段代码放到textfield的配置里面就可以了。回头可以考虑继承或者重写一下textfield,直接在它的配置里面设置blockchars就可以了。

 

另外,blockchars就是屏蔽的字符集合,上例中屏蔽的是空格。

 

转载请注明来源:http://sny7.iteye.com,谢谢!

你可能感兴趣的:(C++,c,PHP,C#)