Pozwolę sobie poprawić

1. getElementByTagName - zjadłeś s
2. nie ma czegoś takiego jak length()

3. wystarczy sprawdzać typ inputa, nie trzeba jechać po id, poza tym dałeś takie samo id dla 4 inputów co nie jest prawidłowe
4. sprawdzanie lepiej zrobić na onkeyup, onchange zadziała dopiero jak zmienisz focus okna, czyli przełączysz się na coś innego i wrócisz z powrotem.

Kod
<script type="text/javascript">
function testuj(obj) {
dis=false;
val='';
if (obj.value!=""){
dis=true;
val='nie dostępny';
}
ar=document.getElementsByTagName('input');
for(i=0;i<ar.length;i++) {
if (ar[i].type=='text'){
ar[i].value=val;
ar[i].disabled=dis;
}
}
}
</script>
<input type="text" name="p1" value="" /> <input type="text" name="p2" value="" /> <input type="text" name="p3" value="" /> <input type="text" name="p4" value="" /> <input type="password" name="pp" value="" onkeyup="testuj(this)" />