Jag tycker det ser ut som du blandar variabel/array/objekt-referesner hejvilt.
När du anropar funktionen changeSpecValue gör du det med 2 argument, i exemplet skickar du med arrItemsValue1 och arrItemsValue2. Vad är detta? Är det variabler eller arrayer från någon annan del av sidan? Det skulle även kunna vara objekt-referenser till <select>-objekt eftersom IE är lite slaphänt och tillåter det mesta, men i så fall bör du använda hela namnet på objektet (document.form.osv). variablen proj verkar du i alla fall få en sträng i eftersom du försöker sätta egenskapen ".value" till detta värde. Men här dyker en annan fråga upp. Du skriver att du vill byta värde på några select-boxar. Select-boxar är uppbyggda med ett index, där varje <option> i <select>-boxen har ett indexnummer från 0 och uppåt. För att markera ett värde i en <select>-box (ej multiple) använder du document.formnamn.selectnamn.selectedIndex=X (där X är index-numret). För att byta värde på en <option> använder du document.formnamn.selectnamn[X].value="värde" och för att byta text på <option> använer du document.formnamn.selectnamn[X].text="text" (X är fortfarande index-numret för aktuell <option>).
Sist men icke minst. Välkommen till wF