コメント |
@HTML
<input class="numField" type="text" /> <input class="numField" type="text" /> <input class="numField" type="text" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script> <script type="text/javascript">
$.fn.extend({
allowField: function(str){
$(this).attr("allowstr",str);
$(this).bind('keypress', function(evt) {
if ( evt.charCode != 0 ) {
var allowstr = $(this).attr("allowstr");
var nowstr = String.fromCharCode( evt.charCode );
if ( allowstr.indexOf(nowstr) >= 0 ) {
return;
}
if (navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
try{evt.returnValue = false;}catch(ex){};
}
try{evt.preventDefault();}catch(ex){};
}
}).bind('keydown', function(evt) {
// 漢字
// IE9 と Chrome と Safari は拒否できるが、Chrome は漢字モードにはなってしまうので
// 漢字モードを抜けないと何も入力できなくなる
if ( evt.keyCode == 229 ) {
if (navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
try{evt.returnValue = false;}catch(ex){}
}
try{evt.preventDefault();}catch(ex){}
}
});
return this;
}
});
// プラグインの実行
$(".numField").allowField("1234567890ABCDEFabcdef-")
.css("background-color", "#e0e0ff")
.css("width","70px")
.attr("maxlength",6);
</script>
@HEND
@DIV
<input class="numField" type="text" />
<input class="numField" type="text" />
<input class="numField" type="text" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript">
$.fn.extend({
allowField: function(str){
$(this).attr("allowstr",str);
$(this).bind('keypress', function(evt) {
if ( evt.charCode != 0 ) {
var allowstr = $(this).attr("allowstr");
var nowstr = String.fromCharCode( evt.charCode );
if ( allowstr.indexOf(nowstr) >= 0 ) {
return;
}
if (navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
try{evt.returnValue = false;}catch(ex){};
}
try{evt.preventDefault();}catch(ex){};
}
}).bind('keydown', function(evt) {
// 漢字
// IE9 と Chrome と Safari は拒否できるが、Chrome は漢字モードにはなってしまうので
// 漢字モードを抜けないと何も入力できなくなる
if ( evt.keyCode == 229 ) {
if (navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
try{evt.returnValue = false;}catch(ex){}
}
try{evt.preventDefault();}catch(ex){}
}
});
return this;
}
});
// プラグインの実行
$(".numField").allowField("1234567890ABCDEFabcdef-")
.css("background-color", "#e0e0ff")
.css("width","70px")
.attr("maxlength",6);
</script>
@END |