quando carico una pagina ho questo html, javascript e css

file css
Codice PHP:
.oldcat
{
    
bordersolid 1px #00CC00;
}

.
oldcatm
{
    
bordersolid 1px #FFCC00;

html appena caricato
Codice PHP:
<div id="corpoform">
     <
form action="gescat.php">

     <
div id="fcat"><div class="inputcat" id="v1">
             <
input class="oldcat" id="1" name="cat[1]" value="Camere" />  

      </
div></div>
      </
form>
</
div
js
Codice PHP:
$(document).ready(function(){

        $(
'.oldcat').keypress(function() {
                $(
this).toggleClass("oldcat");
                $(
this).toggleClass("oldcatm");
                
mod=true;
                    
alert('pressione');
            });    
    }); 

tutto questo appena caricato funziona, se modifico dinamicamente l'input all'interno del div così (viene eseguito su l'evento onchange di un select) l'input di classe oldcat viene renderizzato ma il keypress non funziona + qualcuno sa dirmi il perchè
Codice PHP:
$("#inputcat").html("<input class=\"oldcat\" value=\"pippo\" \>");