Prova att byta +-tecknet efter \d mot en * (en stjärna). + betyder ett tecken eller fler, * betyder "ett obestämt antal" och noll stycken skall då duga.
Frågan#1
Detta funkar i princip som det ska. Man får enbart skriva Siffror i textfältet, men om man skriver några siffror men sedan ändrar sig och försöker ta bort dom ur textfältet så tillåter den inte att man tar bort den sista siffran.
<input type="text" name="Serial" onKeyup="re=/(\d+)/; re.exec(this.value); this.value=RegExp.$1;">