在JQuery中访问ASP经典集合变量
大家好,我刚刚接触过asp classic和jquery,我想知道是否有一种方法可以将集合变量传递给jquery。我的目标是使变量一次向下滑动一个。我在jquery上遇到了.slideDown函数,所以我尝试使用它,但似乎不起作用,所以我想问题在于我的标记。。。任何帮助都将不胜感激在JQuery中访问ASP经典集合变量,jquery,variables,collections,asp-classic,Jquery,Variables,Collections,Asp Classic,大家好,我刚刚接触过asp classic和jquery,我想知道是否有一种方法可以将集合变量传递给jquery。我的目标是使变量一次向下滑动一个。我在jquery上遇到了.slideDown函数,所以我尝试使用它,但似乎不起作用,所以我想问题在于我的标记。。。任何帮助都将不胜感激 <% Dim objDictionary, Key,searchWord, myVar,a,i, break searchWord = request.Quer
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
ASP代码:
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
JQUERY代码:
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
<script type="text/javascript">
$(document).ready(function(){
$("#toFall").slideDown("slow");});
</script>
$(文档).ready(函数(){
$(“#toFall”).slideDown(“slow”);};
您是否尝试过将每个字典键放在某种DOM容器中,比如div,每个都是#toFall的子对象,例如:
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
Response.write "<div id='#toFall'>"
for i=0 to objDictionary.Count-1
Response.Write "<div>" + (a(i)) + "</div>"
next
Response.write "</div>"
Response.write“”
对于i=0到objDictionary.Count-1
回答。写“+(a(i))+”
下一个
响应。写入“”
^^请仔细检查语法-我的VBScript已生锈。另外-您确定要中断循环-这不意味着只发生一次写入吗?这里有一个通用方法,它将任何经典ASP集合(带键和值)发送为JavaScript集合:
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
Sub CollectionToJavaScript(oCollection, sClientSideName)
Dim blnFirst
blnFirst = True
Response.Write("<" & "script" & " type=""text/javascript"">")
Response.Write("var " & sClientSideName & " = {")
For Each key In objDictionary.Keys
If Not(blnFirst) Then Response.Write(", ")
Response.Write("""" & key & """: """ & objDictionary(key) & """")
blnFirst = False
Next
Response.Write("};")
Response.Write("</" & "script>")
End Sub
Call CollectionToJavaScript (objDictionary, "myCollection")
然后,在jQuery中,假设您希望向下滑动所有键(即所有键都是有效的DOM元素),则具有以下代码:
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>
$(document).ready(function() {
for (var key in myCollection) {
$("#" + key).slideDown("slow");
}
});
如果您还需要与每个键关联的值,请使用循环中的
myCollection[key]
访问它。这确实解决了我的主要问题,我知道我的语法缺少了一些东西,我只是不知道它是什么,哈哈,tnx.,我刚才尝试过这个,但不起作用..,我想我只是把代码放错了位置。我应该将调用集合放在哪里?使用“
和简单地将其编码为”
有什么区别?只需在完成填充集合后立即放置即可。如果您直接将
作为响应。写入可能会导致问题,因此最好分开。我使用“警报”javascript调试代码,但仍然没有显示任何内容,我认为myCollection没有被填充。我将调用collectionToJavascript放在我的子例程中。没关系,如果你让它与另一个答案一起工作,最好不要碰任何东西。:)无论如何,tnx,只是想探索其他做事方式:)
<%
Dim objDictionary, Key,searchWord, myVar,a,i, break
searchWord = request.QueryString("searchWord")
break = Response.write("<br />")
Set objDictionary = CreateObject("Scripting.Dictionary")
objDictionary.CompareMode=1
objDictionary.Add "Hello","hello"
objDictionary.Add "Age","age"
objDictionary.Add "height","height"
objDictionary.Add "sample","sample"
objDictionary.Add "words","words"
if objDictionary.Exists(searchWord) then
objDictionary.Remove(searchWord)
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
else
a = objDictionary.Keys
for i=0 to objDictionary.Count-1
Response.Write(a(i))
break
next
set objDictionary=nothing
end if
%>