//返回字符串方法
//方法很简单就是把JS代码和数据混合成字符串,然后向前台输出
//因方法需在前台调用所以定义成 public ,方法返回一个字符串,
public string InitAddItem()
{
System.Text.StringBuilder retstr = new System.Text.StringBuilder()
//List<Products>list = (List<Products>)ProductsDAL.GetProForBanner()
//假设调用方法返回一个dataset
DataSet ds = ProductsDAL.GetProForBanner()
int tmp = ds.Tables[0].Rows.Count
for (int i = 0i <tmpi++)
{
// Pid,PName,PUrl,PImg ,将你所要的数据写入字符串
retstr.Append("PImgPlayer.addItem( \"" + ds.Tables[0].Rows[i]["PName"] + "\", \"#\", \"" + ds.Tables[0].Rows[i]["PImg"] + "\")")
}
retstr.Append(" PImgPlayer.init(\"imgADPlayer\", 977, 304)")//最后加上你的调用
return "<script>" + retstr.ToString() + " </script>"//返回整个脚本块
}
//返回字符串方法前台调用
<div id="imgADPlayer">
</div>
//直接调用InitAddItem方法。
<%=InitAddItem()%>
//脚本中是不能调用CS页面中的方法的,但是脚本却能调用一般处理程序(ASHX)页面中的方法
如果觉得上面返回字符串的方法不行可以用ASHX``楼主可以直接百度.net一般处理程序
如果还有不懂可加QQ229161146
你的ajax请求中设定了返回数据类型为"json",这表示脚本预期的响应MIME type为text/json,并且致命的地方是,jQuery会将你的响应文本转换成json对象.而你的响应其实是一个plain text,并不符合json规范.这在某些浏览器中会抛出异常中断程序,所以你的success回调函数没有被执行.如果你将响应处的代码改为{"test":"OK"},或者将页面的ajax dataType设置成"text",或者干脆去掉dataType参数(也就是"json" //返回json类型数据 这个参数)让jQuery智能猜测,你应该能顺利获取到响应值.
这只是其中一种不能顺利获取响应的情况,如果问题还未解决请追问.3q~_~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)