Ok, I don't know why I'm having such a hard time with this. All relevant code is below. I'm thinking I need to disable the comboboxes in the ASP subs, but can't figure out how. Any ideas?
<%
dim strDataPath, strConnectString, objConnection, strMake, strModel, strYear, strEngine, strEngineSize, objRS, strSelected
strMake = Request.Form("Make")
strModel = Request.Form("Model")
strYear = Request.Form("Year")
strEngine = Request.Form("Engine")
strEngineSize = Request.Form("EngineSize")
'set connection strings for entire application
strDataPath = server.MapPath("NorthWind.mdb")
strConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"_
+ " Data Source= " & strDataPath & ";"_
+ " Mode=Share Deny None;User Id=admin;PASSWORD=;"
if not IsObject("ojbConnection") then
set objConnection=Server.CreateObject("ADODB.Connection")
objConnection.ConnectionTimeout = 15
objConnection.CommandTimeout = 10
objConnection.Mode = 3 'adModeReadWrite
if objConnection.state = 0 then
objConnection.Open strConnectString
end if
end if
sub makeMake()
if not isObject("objRS") then
set objRS=Server.CreateObject("ADODB.RecordSet")
end if
if objRS.state <> 0 then
objRS.close
end if
objRS.Open "SELECT DISTINCT Make FROM tblInventory ORDER BY Make",objConnection,3,3
Response.Write("<option></option>" & VBCRLF )
do while not objRS.EOF
if objRS("Make") = strMake then
strSelected = " Selected "
else
strSelected = ""
end if
Response.Write("<option" & strSelected & ">" & objRS("Make") & "</option>" & VBCRLF )
objRS.MoveNext
loop
objRS.Close
set objRS=Nothing
end sub
sub makeModel()
if strMake <> "" then
if not isObject("objRS") then
set objRS=Server.CreateObject("ADODB.RecordSet")
end if
if objRS.state <> 0 then
objRS.close
end if
objRS.Open "SELECT DISTINCT Model FROM tblInventory WHERE Make = '" & strMake & "' ORDER BY Model",objConnection,3,3
if objRS.eof then
Response.Write("<option>No Models Found</option>")
else
Response.Write("<option>Select Model Now</option>" & VBCRLF )
do while not objRS.EOF
if objRS("Model") = strModel then
strSelected = " Selected "
else
strSelected = ""
end if
Response.Write("<option" & strSelected & ">" & objRS("Model") & "</option>" & VBCRLF )
objRS.MoveNext
loop
end if
objRS.Close
set objRS=Nothing
else
Response.Write("<option>Select a Make First</option>")
end if
end sub
sub makeYear()
if strModel <> "Select a Make First" AND strModel <> "Select Model Now" AND strModel <>"" then
if not isObject("objRS") then
set objRS=Server.CreateObject("ADODB.RecordSet")
end if
if objRS.state <> 0 then
objRS.close
end if
objRS.Open "SELECT DISTINCT Year FROM tblInventory WHERE Make = '"& strMake & "' AND Model = '" & strModel & "' ORDER BY Year",objConnection,3,3
if objRS.eof then
Response.Write("<option>No Years Found</option>")
else
Response.Write("<option>Select Year Now</option>" & VBCRLF )
do while not objRS.EOF
if objRS("Year") = strYear then
strSelected = " Selected "
else
strSelected = ""
end if
Response.Write("<option" & strSelected & ">" & objRS("Year") & "</option>" & VBCRLF )
objRS.MoveNext
loop
end if
objRS.Close
set objRS=Nothing
else
Response.Write("<option>Select a Model First</option>")
end if
end sub
sub makeEngine()
if strYear <> "Select a Year First" AND strYear <> "Select Year Now" AND strYear <>"" then
if not isObject("objRS") then
set objRS=Server.CreateObject("ADODB.RecordSet")
end if
if objRS.state <> 0 then
objRS.close
end if
objRS.Open "SELECT DISTINCT Engine FROM tblInventory WHERE Make = '"& strMake & "' AND Model = '" & strModel & "' AND Year = '" & strYear & "' ORDER BY Engine",objConnection,3,3
if objRS.eof then
Response.Write("<option>No Engine Found</option>")
else
Response.Write("<option>Select Engine Now</option>" & VBCRLF )
do while not objRS.EOF
if objRS("Engine") = strEngine then
strSelected = " Selected "
else
strSelected = ""
end if
Response.Write("<option" & strSelected & ">" & objRS("Engine") & "</option>" & VBCRLF )
objRS.MoveNext
loop
end if
objRS.Close
set objRS=Nothing
else
Response.Write("<option>Select a Year First</option>")
end if
end sub
sub makeEngineSize()
if strEngine <> "Select an Engine First" AND strEngine <> "Select Engine Now" AND strEngine <>"" then
if not isObject("objRS") then
set objRS=Server.CreateObject("ADODB.RecordSet")
end if
if objRS.state <> 0 then
objRS.close
end if
objRS.Open "SELECT DISTINCT EngineSize FROM tblInventory WHERE Make = '"& strMake & "' AND Model = '" & strModel & "' And Year = '" & strYear & "' AND Engine = '" & strEngine & "' ORDER BY EngineSize",objConnection,3,3
if objRS.eof then
Response.Write("<option>No Engine Found</option>")
else
Response.Write("<option>Select Engine Size Now</option>" & VBCRLF )
do while not objRS.EOF
if objRS("EngineSize") = strEngineSize then
strSelected = " Selected "
else
strSelected = ""
end if
Response.Write("<option" & strSelected & ">" & objRS("EngineSize") & "</option>" & VBCRLF )
objRS.MoveNext
loop
end if
objRS.Close
set objRS=Nothing
else
Response.Write("<option>Select an Engine First</option>")
end if
end sub
%>
<SCRIPT LANGUAGE=javascript>
<!--
function submitMake(){
var objForm = document.forms[0];
objForm.elements['model'].selectedIndex=0;
objForm.elements['year'].selectedIndex = 0;
objForm.elements['engine'].selectedIndex=0;
objForm.elements['engineSize'].selectedIndex = 0;
objForm.submit();
}
function submitModel(){
var objForm = document.forms[0];
objForm.elements['year'].selectedIndex = 0;
objForm.elements['engine'].selectedIndex=0;
objForm.elements['engineSize'].selectedIndex = 0;
objForm.submit();
}
function submitYear(){
var objForm = document.forms[0];
objForm.elements['engine'].selectedIndex = 0;
objForm.elements['engineSize'].selectedIndex = 0;
objForm.submit();
}
function submitEngine(){
var objForm = document.forms[0];
objForm.elements['engineSize'].selectedIndex=0;
objForm.submit();
}
function submitForm(){
var objForm = document.forms[0];
objForm.action = "viewlist.asp"
return true;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<FORM action="" method=POST id=form1 name=form1 onSubmit="return submitForm()">
<SELECT name="make" onchange="submitMake();">
<%call makeMake%>
</SELECT><br>
<SELECT name="model" onChange="submitModel()">
<%call makeModel%>
</SELECT><br>
<SELECT name="year" onChange="submitYear()">
<%call makeYear%>
</SELECT><br>
<SELECT name="engine" onChange="submitEngine()">
<%call makeEngine%>
</SELECT><br>
<SELECT name="engineSize">
<%call makeEngineSize%>
</SELECT>
<p><INPUT type="submit" value="Submit" id=submit1 name=submit1></p>
</FORM>
</BODY>
<%
objConnection.Close
set objConnection = Nothing
%>