jQuery AJAX实现调用页面后台方法,jqueryajax

任意页面动态调用购物车数量,不用刷新数据。

jQuery AJAX实现调用页面后台方法,jqueryajax

本文实例为大家分享了jQuery
AJAX调用页面后台方法,供大家参考,具体内容如下

1.新建demo.aspx页面。

2.首先在该页面的后台文件demos.aspx.cs中添加引用。

using System.Web.Services;

1).无参数的方法调用.
大家注意了,这个版本不能低于.net framework 2.0。2.0已下不支持的。
后台代码:

[WebMethod]   
public static string SayHello()   
{   
   return "Hello Ajax!";   
}  

JS代码:

$(function() {   
  $("#btnOK").click(function() {   
    $.ajax({   
      //要用post方式   
      type: "Post",   
      //方法所在页面和方法名   
      url: "Demo.aspx/SayHello",   
      contentType: "application/json; charset=utf-8",   
      dataType: "json",   
      success: function(data) {   
        //返回的数据用data.d获取内容   
        alert(data.d);   
      },   
      error: function(err) {   
        alert(err);   
      }   
    });   

    //禁用按钮的提交   
    return false;   
  });   
});  

页面代码:

  <form id="form1" runat="server">
  <div>
    <asp:Button ID="btnOK" runat="server" Text="验证用户" />
  </div>
  </form>

运行效果如下:

图片 1

2).有参数方法调用
后台代码:

[WebMethod]   
public static string GetStr(string str, string str2)   
{   
  return str + str2;   
} 

JS代码:

$(function() {   
  $("#btnOK").click(function() {   
    $.ajax({   
      type: "Post",   
      url: "demo.aspx/GetStr",   
      //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字   
      data: "{'str':'我是','str2':'XXX'}",   
      contentType: "application/json; charset=utf-8",   
      dataType: "json",   
      success: function(data) {   
        //返回的数据用data.d获取内容   
         alert(data.d);   
      },   
      error: function(err) {   
        alert(err);   
      }   
    });   

    //禁用按钮的提交   
    return false;   
  });   
}); 

运行效果如下:

图片 2

3).返回数组方法
后台代码:

[WebMethod]   
public static List<string> GetArray()   
{   
  List<string> li = new List<string>();   

  for (int i = 0; i < 10; i++)   
    li.Add(i + "");   

  return li;   
}  

JS代码:

$(function() {   
  $("#btnOK").click(function() {   
    $.ajax({   
      type: "Post",   
      url: "demo.aspx/GetArray",   
      contentType: "application/json; charset=utf-8",   
      dataType: "json",   
      success: function(data) {   
        //插入前先清空ul   
        $("#list").html("");   

        //递归获取数据   
        $(data.d).each(function() {   
          //插入结果到li里面   
          $("#list").append("<li>" + this + "</li>");   
        });   

        alert(data.d);   
      },   
      error: function(err) {   
        alert(err);   
      }   
    });   

    //禁用按钮的提交   
    return false;   
  });   
}); 

页面代码:

<form id="form1" runat="server">
<div>
  <asp:Button ID="btnOK" runat="server" Text="验证用户" />
</div>
<ul id="list">
</ul>
</form>

运行结果图:

图片 3

jQuery
AJAX实现调用页面后台方法就为大家介绍到这,希望对大家的学习有所启发。

AJAX实现调用页面后台方法,jqueryajax
本文实例为大家分享了jQuery
AJAX调用页面后台方法,供大家参考,具体内容如下
1.新建demo.aspx页面…

 

同时适用于帝国CMS6.6、7.0

本文由本人编写,实为离职移交文档的一篇,发到CSDN上以供交流,欢迎拍砖。

新建一个buycarjs.php文件放在/e/shopsys/buycar/下,代码如下:

 

?phprequire("../../class/connect.php");require("../../class/q_functions.php");require("../../class/db_sql.php");require("../../data/dbcache/class.php");eCheckCloseMods('shop');//关闭模块$link=db_connect();$empire=new mysqlquery();$editor=1;$buycar=getcvar('mybuycar');$record="!";$r=explode($record,$buycar);$count=count($r)-1;?document.write(" ?=$count? ");

 

模板页面调用代码:

 

a href="/e/ShopSys/buycar/" target="_blank"购物车script src="/e/ShopSys/buycar/buycarjs.php"/script件/a

编写目的:本文重点阐述在iOS系统上通用的本地Objective-C代码与基于Javascript的Web的应用的互操作的基本方法,并通过具体范例说明两种代码的交互方式;

阅读前提:熟悉iOS系统的UIWebView的功能、调用方法,相应的UIWebViewDelegate委托的使用方法,并了解Javascript函数的基本语法与函数调用方法;

说明:正文部分红色字体表示Javascript代码,蓝色字体部分表示Objectvie-C代码(没办法贴格式了,将就看吧:();**

正文:

1.       Objective-C调用Javascript方法:

前提:

UIWebView已经完全加载完成包含需要调用的页面(注:在UIWebViewDelegate托管中通过监视– (void)webViewDidFinishLoad:(UIWebView
*)webView
调用来确定页面是否加载完成)。

方法:

假设某视图对象的子视图属性self.webview加载的页面包含如下Javascript函数:

function getString(){ return “Hello
javascript!”;}

并且该函数在该页面上可被正常调用,则可以通过形如下面的Objectvie-C方法调用此函数:

NSString *str = [self.webview
stringByEvaluatingJavaScriptFromString:@”getString();”];

该函数调用实际模拟了页面上的一次Javascript函数调用,因此在该函数内部任何有效的Javascript代码都可被执行!该Objective-C代码返回值为被调用的Javascript代码的返回值,在上例中,str的值将被赋为@”Hello
javascript!”。

被调用的函数可以带有字符串或数值型的参数。若调用的Javascript函数名称带有参数,需保证传进去的参数的格式正确性,特别是字符串参数的引号很容易被忽略。

2.       系统响应页面Javascript代码:

前提:

       需要实现UIWebViewDelegate的

  • (BOOL)webView:(UIWebView *)webView

shouldStartLoadWithRequest:(NSURLRequest *)request

navigationType:(UIWebViewNavigationType)navigationType;

托管函数(以下简称跳转监视函数)并将实现了该托管函数的对象设置为UIWebView的delegate。

方法:

       UIWebView的当前页面将要被Javascript代码通过以下方式转向的时候,会调用上述跳转监视函数:

      
window.location.href=”;

此时实现了该托管协议的对象的跳转监视函数会被调用,通过如下代码监视浏览器跳转的地址:

       NSString *url = [[request URL]
absoluteString];

若该托管函数返回值为NO,则页面UIWebView的页面跳转将被否决。利用这一思路,监视页面上的特定格式的跳转地址加以拦截,并执行相应的本地代码,即可实现Javascript与Objective-C代码的交互。

       例如,规定拦截URL地址前缀为”objc:”的所有地址,并且用if…else…语句判定本地需要执行的代码,则实现形如以下格式的Objective-C托管函数:

  • (BOOL)webView:(UIWebView *)webView

shouldStartLoadWithRequest:(NSURLRequest *)request

navigationType:(UIWebViewNavigationType)navigationType

{

NSString *urlString = [[request URL]
absoluteString];

       NSArray *urlComps = [urlString
componentsSeparatedByString:@”:”];

       if([urlComps count] && [[urlComps
objectAtIndex:o] isEqualToString:@”objc”])

       {

              NSString *funcStr = [urlComps
objectAtIndex:1];

              if([funcStr
isEqualToString:@”doFunc1″])

              {

                     /*调用本地函数1*/

              }

              else if([funcStr
isEqualToString:@”doFunc2″])

              {

                     /*调用本地函数2*/

              }

              return NO;

       }

       return YES;

}

当需要调用本地函数1时,可以通过如下Javascript函数进行:

       window.location.href=”objc:doFunc1”;

根据上述思路,可以完善通过Javascript调用本地带参数的Objective-C代码。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。


发表评论

电子邮件地址不会被公开。 必填项已用*标注