经典的asp - javascript阵列由vbscript填充下拉列表

问题描述:

我需要创建一个基于下拉列表'(多个)选定的值填充的javascript数组,除了每个下拉列表具有相同的名称,因为它们是在for循环中创建。现在,我有:经典的asp - javascript阵列由vbscript填充下拉列表

<script language="JavaScript"> 
    var array = []; 
    var e = document.getElementById("phItemStatusID").value; //returns first ddl value 
</script> 

,并在后面的ASP代码是我的下拉列表选择从数据库填充使用VBScript:

<%for i = 0 to UBound(photoItemsArray,2)%> //for each item, generate DDL 
<select name="phItemStatusID"> 
    itemStatusID = photoItemsArray(6,i) //get current selected value 
    for j = 0 to UBound(photoStatusesArray,2)%> //for each possible status 
    <option value="<%=photoStatusesArray(0,j)%>" 
      <%if photoStatusesArray(0,j) = itemStatusID then%> 
       selected 
      <%end if%>> 
      <%=photoStatusesArray(1,j)%> 
     </option> 
    <%next%> 
</select> 
next%> 

这工作在的情况下,只有一个下拉列表产生。我遇到的问题涉及有多个下拉列表的名称为phItemStatusID的实例。

var e = document.getElementById("phItemStatusID").value;只返回第一个下拉列表的值,其他值被忽略。我如何获得它们?

document.getElementById("phItemStatusID").value将获得ID为“phItemStatusID”的第一个元素的值,因为HTML中的ID应该是唯一的。

如果要获取第二个框的值,请使用其他ID。

+0

是否没有办法循环遍历每个生成的phItemStatusID?在vbscript中,您可以使用:newPhotoItemStatusID = Request.Form(“phItemStatusID”)(i)其中“i”是您想要的值的下拉列表。 – user1555171 2012-07-26 15:44:01

+1

对于初学者:你在混合元素名称和ID的功能。直到你解决这个问题,你的代码才会起作用。 – 2012-07-26 15:51:19

+0

哦!我没有仔细阅读你的评论。我会给这个镜头。谢谢! – user1555171 2012-07-26 15:57:20