在asp.net里把数据库里的一个字段的数据读到一个数组里后,怎样把它的值赋给页面里js脚本里定义的数组?????
在asp.net里把数据库里的一个字段的数据读到一个数组里后,怎样把它的值赋给页面里js脚本里定义的数组?????
------解决方案--------------------帮你顶~~~~~~~~
------解决方案--------------------我认为可以把值“依次”赋给StringBuilder对象和一个分割符号,然后传给js函数。
在js函数里进行split()分割后,“依次”赋值给js数组。
------解决方案--------------------1.好像不能直接读取,可以考虑以下办法:
首先把字符数组用逗号串连成一个字符串(当然直接取数据库不用存数组直接组成字符串);
然后把字符串放到一个 <asp:hidden变量里面;
再由前台的js文件读取字符串分割成数组.
------解决方案--------------------同意楼上的
放在一个隐藏域里;然后getElementByID 取值
再处理
------解决方案--------------------或者用ajax
------解决方案--------------------直接生成js
string sScript = "var ary = new Array(); ";
foreach(DataRow row in dt.Rows)
{
sScript+= " ary[ary.length]= ' "+ row[ "字段 "].ToString()+ " '; ";
}
....
------解决方案--------------------这里面有些方法:
http://tech.eyeah.cn/3117/1115/1138/222337167.html
------解决方案--------------------用AjaxMethod.cs获取数据库的信息
public string[] GetDataInfo()
{
……
string[] str=(信息);
return str;
}
在aspx页
<script type= "text/javascript ">
function GetStr()
{
var test=new Array();
test=AjaxMethod.GetDataInfo().value;
var str1=test[0];
var str2=test[1];
……
}
</script>
------解决方案--------------------给你一个例子:
DataTable dt = new DataTable();
dt.Columns.Add( "id ", typeof(int));
dt.Columns.Add( "DeptName ");
dt.Rows.Add(1, "市场部 ");
dt.Rows.Add(2, "人力资源部 ");
dt.Rows.Add(3, "金融事业部 ");
dt.Rows.Add(4, "通信事业部 ");
string sScript = "var ary = [ ";
foreach(DataRow row in dt.Rows)
{
sScript += " ' " + row[ "deptName "].ToString() + " ', ";
}
sScript = sScript.Substring(0, sScript.Length - 1)+ "];alert(ary.length);alert(ary[2]); ";
sScript = " <script language= 'javascript '> " + sScript + " </script> ";
this.Page.ClientScript.RegisterClientScriptBlock(typeof(string), "A ", sScript);
------解决方案--------------------楼上的不多啊。值得推荐!
------解决方案--------------------你运行一下就知道了
------解决方案--------------------将数据值 读取到一个
CS:
public string ls_arrs = "a,b,c,f ";
JS:
var strs = " <%=ls_arrs> ";
然后 分割到字符串数组
var ls_str = new Array();
ls_str = strs.split( ', ');
坚定完毕 楼主结帖!
------解决方案--------------------strs = " <%=ls_arrs> ";这种方法在脚本里写是不正确的!今天试了n次了!
错误信息是什么??
ls_arrs 在ASPX页面能够访问 必须是 public !!!!
------解决方案--------------------mark,
up
------解决方案--------------------顶。。。。