У меня это работало в prototype.js, но оно конфликтовало с несколькими файлами сценариев. Вот как я настроил его в новом скрипте, используя http://digitalbush.com/projects/masked-input-plugin/
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.maskedinput.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
jQuery(function($){
$("#phone").mask("(999)999-9999");
$.mask.definitions['~']='[+-]';
$("#eyescript").mask("~9.99 ~9.99 999");
});
</script>
Очевидно, что что-то упущено из-за моего скрипта в prototype.js, вот пример, который мне пришлось удалить.
<script type="text/javascript" src="/media/system/js/prototype.js"></script>
<script type="text/javascript" src="/media/system/js/prototype.maskedinput.js"></script>
<script type="text/javascript">
Event.observe(window, 'load', function() {
new MaskedInput('#phone', '(999)999-9999');
new MaskedInput('#eyescript', '~9.99 ~9.99 999', {
completed: function(){
alert("You typed the following: " + this.getValue());
}
});
MaskedInput.definitions['~']='[+-]';
new MaskedInput('#eyescript2', '~9.99 ~9.99 999', {
completed: function(){
alert("You typed the following: " + this.getValue());
}
});
});
</script>
Как я уже сказал, этот сценарий работал, но у меня возникали конфликты со слишком многими вещами (mootools / jquery), поэтому я хочу, чтобы вместо этого для этого действия работала версия jquery, и посмотреть, решит ли она проблему.