如何将xxx.aspx页面上的js脚本调用xxx.aspx.cs中的方法

如何将xxx.aspx页面上的js脚本调用xxx.aspx.cs中的方法,第1张

可以直接在后台返回一个字符串,也可以便用一般处理程序。

//返回字符串方法

//方法很简单就是把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~_~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11234029.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存