Можно присоединить к ключу вниз событие и затем отфильтровать ключи согласно тому, в чем Вы нуждаетесь, например:
<input id="FIELD_ID" name="FIELD_ID" onkeypress="return validateNUM(event,this);" type="text">
И фактический обработчик JavaScript был бы:
function validateNUM(e,field)
{
var key = getKeyEvent(e)
if (specialKey(key)) return true;
if ((key >= 48 && key <= 57) || (key == 46)){
if (key != 46)
return true;
else{
if (field.value.search(/\./) == -1 && field.value.length > 0)
return true;
else
return false;
}
}
function getKeyEvent(e){
var keynum
var keychar
var numcheck
if(window.event) // IE
keynum = e.keyCode
else if(e.which) // Netscape/Firefox/Opera
keynum = e.which
return keynum;
}
pp может создать исполняемый файл, который включает perl и ваш скрипт (и любые зависимости модулей), но он будет специфичным для вашей архитектуры, поэтому вы не сможете запустить его в обеих Windows и Linux, например.
Из его документа:
Чтобы сделать автономный исполняемый файл, подходящий для работы на машине, на которой не установлен Perl:
% pp -o Packaged.exe source.pl # делает упакованный.exe # Теперь разверните 'Packed.exe' на целевой машине ... $ pack.exe # запустить
(% и $ есть командные строки на разных машинах).
Из ответа perlfaq3 на Как я могу скомпилировать свою программу Perl в байтовый код или C? :
(предоставлено brian d foy)
В общем, так нельзя. Однако есть некоторые вещи, которые могут сработать в вашей ситуации. Люди обычно задают этот вопрос, потому что они хотят распространять свои работы, не отдавая исходный код, а большинство решений жертвуют дисковым пространством для удобства. Вы, вероятно, также не увидите значительного увеличения скорости, поскольку большинство решений просто включают интерпретатор Perl в конечный продукт (но см. Как я могу заставить мою программу Perl работать быстрее?).
Perl Archive Toolkit ( ] http://par.perl.org/ ) является аналогом Perl JAR для Java. Он находится в свободном доступе и на CPAN ( http://search.cpan.org/dist/PAR/ ).
Есть также некоторые коммерческие продукты, которые могут вам подойти, хотя вы должны купить для них лицензию.
Perl Dev Kit ( http://www.activestate.com/Products/Perl_Dev_Kit/ ) из ActiveState может «превратить ваши программы Perl в готовые к запуску исполняемые файлы для HP-UX, Linux, Solaris и Windows».
Perl2Exe ( http://www.indigostar.com/perl2exe .htm ) - это программа командной строки для преобразования сценариев Perl в исполняемые файлы. Он нацелен как на платформы Windows, так и на unix.
Взгляните на PAR (Perl Archiving Toolkit).
PAR - это кроссплатформенная упаковка и Инструмент развертывания, получивший название крест между Java JAR и Perl2EXE / PerlApp .
И давайте не будем забывать PDK ActiveState . Это позволит вам скомпилировать пользовательский интерфейс, командную строку, службы и установщики Windows.
Я очень рекомендую его, он мне очень хорошо служил на протяжении многих лет, но это около 300 долларов за лицензию.
Cava Packager отлично подходит для экосистемы Windows.
Файлы Perl - это сценарии, а не исполняемые программы. Следовательно, чтобы они «запустили», им понадобится интерпретатор.
Итак, у вас есть два варианта: 1) Иметь интерпретатор на машине, на которой вы хотите запустить скрипт, или 2) Запустите сценарий на сетевом (или Интернет) компьютере, к которому вы подключаетесь удаленно (то есть с помощью браузера)
Установите PAR :: Packer
. Пример для * nix:
sudo cpan -i PAR :: Packer
Для Strawberry Perl для Windows или для установленных ActivePerl и MSVC:
cpan -i PAR :: Packer
Упакуйте его с стр
. Он создаст исполняемый файл с именем "example" или "example.exe" в Windows.
pp -o example example.pl
Это будет работать только в той ОС, в которой он был собран.
PS Это действительно трудно найти клон Unix без Perl. Вы имели в виду Windows?