首页 新闻 搜索 专区 学院

javascript可以调用后台带参函数吗?(两个以上的函数)用ajax怎么实现呢?要有代码才可以得分哟?

0
悬赏园豆:5 [已解决问题] 解决于 2010-11-30 10:08

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的值是怎么回事?

zhaodacheng的主页 zhaodacheng | 初学一级 | 园豆:25
提问于:2010-08-29 08:43
< >
分享
最佳答案
0

二楼正解,用ajax

收获园豆:5
toven | 菜鸟二级 |园豆:259 | 2010-08-31 00:02
能否给一段代码呀?
zhaodacheng | 园豆:25 (初学一级) | 2010-09-01 17:12
用jquery js代码: function pageselectCallback(page_index) { $.post('a.ashx', { index: page_index }, function(data) { alert(data); }); } a.ashx页面 public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; if (context.Request["index"] != null) { //TODO>>> context.Response.Write(context.Request["index"].ToString()); } }
toven | 园豆:259 (菜鸟二级) | 2010-09-02 10:15
其他回答(4)
0

如果想在前台调用后台方法和变量,方法必须是Public全局的。

Astar | 园豆:40805 (高人七级) | 2010-08-29 08:58
呵呵呵! 我也来凑凑热闹!
支持(0) 反对(0) 慧☆星 | 园豆:5533 (大侠五级) | 2010-08-29 10:22
0

你的思路有问题。javascript调用服务器器端程序,得用ajax。或者你得找准asp.net的js回调函数的使用。

并且服务器端代码是提前编译好的,你那样做<%=SetVideoInfor("'+v+'") %>是先编译好出结果生产到那个位置。你查看一下生产的html代码你就清楚了。

慧☆星 | 园豆:5533 (大侠五级) | 2010-08-29 10:19
请问有具体的代码吗?
支持(0) 反对(0) zhaodacheng | 园豆:25 (初学一级) | 2010-09-01 17:12
0

var s = '<%=SetVideoInfor('+v+') %>';

KEL | 园豆:203 (菜鸟二级) | 2010-08-29 10:23
0

我还是菜鸟,我就说我的想法,大家别见笑

如果那两个参数不是长的话,就可以用“?”传值的方式到另一个空白的.aspx页面去处理,最后打印返回的结果到本页

。方法有很多种,可以用jquery的$.get(url,回调函数),还可以用其他方式处理该问题,呵呵,如果说的有错误还望大家

见谅,呵呵

路-人-甲 | 园豆:214 (菜鸟二级) | 2011-01-11 18:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册