function pageselectCallback(page_index, jq)
{
var v = page_index.toString();
var s = '<%=SetVideoInfor("'+v+'") %>';
alert("s = " + s);
return false;
}
后台代码:
protected string SetVideoInfor(string index)
{
if (Session["currentPage"].ToString() != index)
{
Session["currentPage"] = index;
Response.Write("<script>window.location.reload(true);</script>");
}
return index;
}
遇到的问题:在SetVideoInfor函数处设置断点,发现index的值为“+v+”,不是我要的page_index的值是怎么回事?
二楼正解,用ajax
如果想在前台调用后台方法和变量,方法必须是Public全局的。
你的思路有问题。javascript调用服务器器端程序,得用ajax。或者你得找准asp.net的js回调函数的使用。
并且服务器端代码是提前编译好的,你那样做<%=SetVideoInfor("'+v+'") %>是先编译好出结果生产到那个位置。你查看一下生产的html代码你就清楚了。
var s = '<%=SetVideoInfor('+v+') %>';
我还是菜鸟,我就说我的想法,大家别见笑
如果那两个参数不是长的话,就可以用“?”传值的方式到另一个空白的.aspx页面去处理,最后打印返回的结果到本页
。方法有很多种,可以用jquery的$.get(url,回调函数),还可以用其他方式处理该问题,呵呵,如果说的有错误还望大家
见谅,呵呵