1000 GRAZIE
ora funziona

ho risolto senza JSON

php (server side)
echo
<script type="text/javascript">
$('searchButton').observe('click',
function search(){
alert('works!!!');
}
);
</script>
<input type="button" name="Submit" value="Search" id="searchButton"/>

------
nel client

function findCity(){
if ($('selectCity').value == ''){
$('msgCity').update("{$findError['empty']}");
$('msgRif').update('');
}
else{
var url = '{$mainurl2}/search/findCity.php';
var mainBox = $('mainBox');
var pars = 'city='+$('selectCity').value+'&Submit=Search';
clean();
new Ajax.Request(url, {
method: 'post',
parameters: pars,
evalScripts: false,
onSuccess: function(transport) {
new Effect.Fade('load',{duration:0.3});
new Effect.Appear('mainBox',{duration:0.1,queue: 'end'});
$('searchButtonRif').enable();
$('searchButtonCity').enable();
},
onComplete: function (transport){
Element.insert(mainBox,{top: transport.responseText});
}
});
}