• asp.net后台调用前台js代码


    为了通过ajax异步获取数据,我通过使用jquery的$(function{})方法,在页面加载时发送ajax请求,获取相关的数据。但是遇到了一个问题,当我发送的ajax请求需要根据传过来的URL参数来获取数据时,这就存在一个问题,怎样将后台获取的参数传递给前台js的问题。由于页面是先加载jquery的ajax请求页面,再执行后台代码的Page_Load方法,所以必须在获取参数之后再调用ajax方法。可以通过在后台代码中注册前台js代码,控制它的执行顺序。

    后台C#代码如下:

     1 <SPAN style= "FONT-SIZE: 14px" > private string categoryId = "0" ;
     2 protected void Page_Load( object sender, EventArgs e)
     3 {
     4      if (!String.IsNullOrEmpty(Request.QueryString[ "categoryId" ]))
     5      {
     6          categoryId = Request.QueryString[ "categoryId" ];  
     7      }
     8      Page.ClientScript.RegisterStartupScript( this .GetType(), "" , "load(" +categoryId+ ")" ,   true );
     9 }
    10   
    11 </SPAN>

     

    前台js代码如下:

     1 <SPAN style= "FONT-SIZE: 14px" >function load(categoryId) {
     2      $.ajax({
     3          type: "get" ,
     4          url: '<%=ResolveUrl("~/Handler/Test.ashx") %>' ,
     5          dataType: "json" ,
     6          data: "categoryId=" +categoryId,
     7          success: function (result) {
     8              $.each(result, function (index, data) {
     9 });
    10          }
    11      });
    12 };
    13 </SPAN>
  • 相关阅读:
    限制TextBox框 所输入的字符数
    ASP.NET中使用AJAX后,Session丢失异常的自定义处理。
    用div替代模态窗口
    自动更新程序的制作方法
    常用SQL语句集合
    GridView无数据显示表头类
    密码强度
    GridView绑定技巧终结者
    js验证输入是否为手机号码或电话号码
    Js事件列表
  • 原文地址:https://www.cnblogs.com/gates/p/3457680.html
Copyright © 2020-2023  润新知