JS如何能获得后台数组

li114961168 2009-06-09 03:57:57
我想做的是从数据库中读出表中的一个字段,这个字段是图片的路径.页面用了CSS+DIV的布局,页面上有个数据列表datalist
里面放的是图片,点击图片后出现俩个DIV,下面一个大的遮挡住原页面,上面一个小的DIV显示图片,在小的DIV里有2个按钮,上一张,下一张.点击按钮,小的DIV里的图片就对应数据库跟换.这样我就需要用到数据库里图片路径的字段,所以我想 在前台里用JS脚本先把这些字段读出来 记录在数组里,然后就可以调用了,现在就是不知道该怎么用JS来调用后台的那个数组!
我不知道我的问题叙述的够不够清楚...希望有高手能给我详细解答...急死了..在线等答案.您也可以加我QQ114961168 谢谢啦......对了 还想说下.大家不要鄙视我.我的后台用的是VB的代码(我知道现在很多人都用C#了,我也正在学习中,这个问题还是希望能看到VB和JS的代码..谢谢大家....)
...全文
1888 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
li114961168 2009-06-10
  • 打赏
  • 举报
回复
var hh;//代表记录的条数,有多少条记录就有多少个图片URL 图片URL是表中的字段

var arr=new Array();//我在这里定义了一个JS数组想用 arr='<%=arr%>'为这个数组赋值.但是不行,后台数组的值没能写进JS的数组
var s;
hh='<%=hh%>';
//var arr as new array();//这里定义的这个JS数组想要他来接受后台'<%=arr%>'数组中的每个元素...这到底改怎么做呢~~
for (i=0;i<hh;i++)
{s='<%=arr('+i+')%>' //在这里我想用字符串来代替'<%=arr%>' 在其中加个I为数组下标来操作,也不行,还是提示了出错 错误信息是应为表达式
alert(s); //这里要是用alert('<%=arr%(0)>')就能弹出对话框 讲后台数组的那个元素显示出来.但是问题就在这里,怎么做才能把后台的这个
<%=arr%>'数组里的没个元素放到 我前台的JS数组 arr中呢? 太郁闷了...谁来给我点帮助啊!! FOR循环遍历也不能用,难道是我写的不对?请高手帮忙啊.............
}
以上是我前台JS代码
c02645 2009-06-10
  • 打赏
  • 举报
回复
两个方法
1。一次性读全部图片到JS里面,用JS分页。
2。用无刷新交互,点击执行后台,再后回数据到前台JS,用JS再付值显示。

下面是方法2
<script type = "text/javascript" language ="javascript" >
//回调方法
function CallServerFunction(imgID)
{

<%=ClientScript.GetCallbackEventReference(this,"imgID","ReceiveServerData","null") %>
}
//返回结果
function ReceiveServerData(result)
{
alert(result);
}
</script>

.cs

public partial class _Default : System.Web.UI.Page, System.Web.UI.ICallbackEventHandler //记得继承ICallbackEventHandler
{

string Result = "";
protected void Page_Load(object sender, EventArgs e)
{
}

/// <summary>
/// 该方法是回调执行的方法,根据参数在这个方法中处理回调的内容,该方法没有返回值
/// </summary>
/// <param name="eventArgument">此参数是从客户端传过来的</param>
public void RaiseCallbackEvent(string eventArgument)
{

Result="第"+eventArgument+"页图片数据";
}

/**/
/// <summary>
/// 该方法是返回回调的结果给客户端
/// </summary>
/// <returns></returns>
public string GetCallbackResult()
{
return Result;
}
}



调用 <script>CallServerFunction(1);</script>
li114961168 2009-06-09
  • 打赏
  • 举报
回复
现在我用JS已经可以访问到getimagelist(0);现在又有新问题了.如何在能用JS遍历<%= getImageList() %>这个数组呢..急急急...来人帮帮忙啊
gui0605 2009-06-09
  • 打赏
  • 举报
回复
后台返回值为ArrayList即可
li114961168 2009-06-09
  • 打赏
  • 举报
回复
我把 sub 前加了public 过程名改为 getimages
但是var list = <%= getImageList() %> 代码在前台JS里就报错..运行不了的
下面是错误信息..
错误 3 重载决策失败,原因是没有可访问的“Write”可以用这些参数调用: E:\aspnet\ms\index.aspx 25

li114961168 2009-06-09
  • 打赏
  • 举报
回复
顺便说下我的VS是2005的..
li114961168 2009-06-09
  • 打赏
  • 举报
回复
split怎么用的啊 谁能给点具体的代码之类的...这个功能一定要用到AJAX吗?
现在我的后台代码是这样的

sub ini()
dim da as new Dim da As New SqlDataAdapter("select * from table",conn)
dim i as Integer
dim table as new datatable
da.fill(table)
Dim arr(Tables.Rows.Count) As String
for i =0 to table.rows.Count - 1
arr(i)=table.row(i).item(0)//没条数据的第一个字段是图片的URL
next
end sub

现在我就是把arr(i)这个数组已经创建赋值了. 现在我还要怎么做才能在前台的JS里调用到这个数组呢?在前台的JS应该怎么去写呢? 谁能给我点详细的代码啊..脑子乱了...求解~~~~~HELP
tulong403 2009-06-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wenwenlou 的回复:]
我不会VB,不知道这样行不行,在页面的js中添加这样的代码:var list = <%= getImageList() %>

后台写方法:
public string[] getImageList()
{
你具体获取图片路径的代码;
}

在象楼上说的split
[/Quote]



差不多了
这样实现就差不多了
wenwenlou 2009-06-09
  • 打赏
  • 举报
回复
我不会VB,不知道这样行不行,在页面的js中添加这样的代码:var list = <%= getImageList() %>

后台写方法:
public string[] getImageList()
{
你具体获取图片路径的代码;
}

在象楼上说的split
FlowerJunjie 2009-06-09
  • 打赏
  • 举报
回复
把数组转成字符串了
然后前台再split分割
time_is_life 2009-06-09
  • 打赏
  • 举报
回复
ajax + webservice

62,050

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧