2011-07-19 9 views
0

ドロップダウンしましたが、選択したアイテムの値を取得できません。私がrequest.form( "PageSelect")を使うと、値を0にすることができますが、私の多次元配列はそのリストを埋めるために使われます。このコードは上記ドロップダウンリストの問題の値を取得する

<select name="PageSelect" onchange="this.form.submit()" style="font-weight:bold;"> 
          <option value="">[All]</option>       
        <%      
        Dim PageArray 
        Dim PageCount 
        Set c = Server.CreateObject("ADODB.Connection") 
        Set r = Server.CreateObject("ADODB.Recordset") 
        r.CursorLocation = adUseServer 
        c.open connectionstring 
        c.CursorLocation = adUseServer 

        SQL = "select * from a_page order by P_Description" 

        Set r = Server.CreateObject("ADODB.Recordset") 
        r.CursorLocation = adUseServer 
        r.Open SQL, c, adOpenForwardOnly, adLockReadOnly 
        If r.BOF or r.EOF Then 
         r.close() 
         Set r = Nothing 
        Else 
         PageArray = r.GetRows() 
         PageCount = UBound(PageArray, 2) 
         r.Close() 
         Set r = Nothing 
        End If 
        c.Close() 
        Set c = Nothing 
         for i = 0 to PageCount       
          if PageSelect = pageArray(0,i) then 
          %>       
           <option selected value="<%=pageArray(0,i) %>"><%=pageArray(1,i) %></option> 
          <%     
          else 
          %> 
           <option value="<%=pageArray(0,i) %>"><%=pageArray(1,i) %></option> 
          <% 
          end if 
         next %> 
         </select> 

ここでさまざまなアイテムのために別の2つの選択ボックス

<select id="PermissionID" name="PermissionID" onChange="this.form.submit()" style="font-weight:bold;"> 
          <option value="0">[All Permissions]</option> 
<% obj_ADO.ClearParameters 
    lng_RecSet1 = obj_ADO.GetFreeRecordset 
    obj_ADO.Recordset "A_combo_Permissions_select", adCmdStoredProc, obj_Session.int_CommandTimeout, lng_RecSet1 
    while obj_ADO.EOF(lng_RecSet1) = 0 
     if obj_ADO.GetField(0, adValue, lng_RecSet1) = lng_PermissionID then 
%> 
          <option selected value="<%=obj_ADO.GetField(0, adValue, lng_RecSet1)%>"><%=obj_ADO.GetField(1, adValue, lng_RecSet1)%></option> 
<%  
     else 
%> 
          <option value="<%=obj_ADO.GetField(0, adValue, lng_RecSet1)%>"><%=obj_ADO.GetField(1, adValue, lng_RecSet1)%></option> 
<% 
     end if 
     obj_ADO.MoveNext lng_RecSet1 
    wend 
    obj_ADO.CloseRecordset lng_RecSet1 
%>      
         </select> 
        </td> 
       </tr> 
       <tr> 
        <td colspan="2"> 
         <select multiple size="10" name="ActionPermissionID" id="ActionPermissionID"> 
          <option value="">[Add/Remove Permission]</option> 
<% obj_ADO.ClearParameters 
    lng_RecSet1 = obj_ADO.GetFreeRecordset 
    obj_ADO.Recordset "A_combo_Permissions_select", adCmdStoredProc, obj_Session.int_CommandTimeout, lng_RecSet1 
    while obj_ADO.EOF(lng_RecSet1) = 0 
     if not isarray(lng_ActionPermissionID) then 
      if obj_ADO.GetField(0, adValue, lng_RecSet1) = lng_ActionPermissionID then 
%> 
          <option selected value="<%=obj_ADO.GetField(0, adValue, lng_RecSet1)%>"><%=obj_ADO.GetField(1, adValue, lng_RecSet1)%></option> 
<%  
      else 
%> 
          <option value="<%=obj_ADO.GetField(0, adValue, lng_RecSet1)%>"><%=obj_ADO.GetField(1, adValue, lng_RecSet1)%></option> 
<% 
      end if 
     else 
%> 
          <option value="<%=obj_ADO.GetField(0, adValue, lng_RecSet1)%>"><%=obj_ADO.GetField(1, adValue, lng_RecSet1)%></option> 
<% 
     end if 
     obj_ADO.MoveNext lng_RecSet1 
    wend 
    obj_ADO.CloseRecordset lng_RecSet1 

%>      
         </select> 
+0

あなたが投稿してくださいことができますを含むページソースのスニペット? –

+0

@ hamlin11がもう少し追加されました –

+0

@ hamlin11、ありがとう、私はあなたのためのソースを投稿するために探していた間に問題を発見しました。 –

答えて

0

が問題だったです - これに変更

if len(Request.Form("PageSelect"))>0 and isnumeric(Request.Form("PageSelect")) then 
    PageSelect = clng(Request.Form("PermissionID")) 
else 
    PageSelect = 0 
end if 

-

if len(Request.Form("PageSelect"))>0 and isnumeric(Request.Form("PageSelect")) then 
    PageSelect = clng(Request.Form("PageSelect")) 
else 
    PageSelect = 0 
end if 
関連する問題