ajax能运用到app吗,Jquery之Ajax运用 学习运用篇

还是先说一些基础知识:

语法:$.ajax({option})

option表示参数。以key/value形式出现。

常用参数:type:post/get。

url:发送请求的地址。

data:{object:object} 发送到服务器的数据,必须为key/value格式。可以设置processData属性,不转换数据格式。

success:function(msg){} 请求成功后回调函数。

error:function(msg){} 请求失败后回调函数。

dataType:xml/html/script/json/jsonp 返回的数据类型。

再看实例理解:

1.用Ajax实现无刷新审核功能(点击审核后,LinkButton不可用,并改为已审核)。界面如下:

538009738b7dac127f08678ea38342a5.gif

这里数据显示用的是Repeater控件,其中审核按钮为LinkButton服务器控件。

页面Html代码:

rules="none">

选择

单号

状态

店铺

购买者

RMB

操作

" name="OrderId" value="" />

1号店铺

张三

100.00

审核

全选/反选

实现代码如下:

a.脚本代码:

function lbtn_Audit_eShop_Price_Command(obj,orderId)

{

if (obj.innerHTML != "审核") return false;

if (!confirm("确定要审核吗?")) {

return false;

}

$.ajax({

type:"post",//Post发送方式

url:"AjaxTest.aspx",//请求地址为本页面地址

data:{OrderId:orderId,Action:"Single_Review"},//传入数据为订单号以及Action

success:(function(msg){

if(msg!="")

{

var chkId = "OrderId_"+orderId;

document.getElementById(chkId).disabled = "disabled";

obj.disabled = "disabled";

obj.innerHTML = "已审核";

}

})

});

return false;

}

b.服务器代码:

根据Action判断事件的执行。

protected void Page_Load(object sender, EventArgs e)

{

Conn.Open();

//执行动作

string Action = CommFun.Get_Safe_Str(Request["Action"]);

if (!IsPostBack)

{

if (Action == "")

{

rpt_Pro_Order_List_Bind();

}

else if (Action == "Single_Review") //点击审核

{

lbtn_Audit_eShop_Price_Command();

}

else //点击批量审核

{

btn_Batch_Review_eShop_Price();

}

}

}

Repeater绑定数据后,为LinkButton添加onclick属性,用于执行页面脚本代码。

protected void rpt_Pro_Order_List_Bind()

{

……

this.rpt_Review.DataSource = Dt;

this.rpt_Review.DataBind();

for (int i = 0; i < this.rpt_Review.Items.Count; i++)

{

LinkButton lbtn_Audit_eShop_Price = (LinkButton)this.rpt_Review.Items[i].FindControl("lbtn_Audit_eShop_Price");

if (Dt.Rows[i]["Audit_eShop_Price"].ToString() == "1")

{

lbtn_Audit_eShop_Price.Enabled = false;

lbtn_Audit_eShop_Price.Text = "已审核";

}

else

{

lbtn_Audit_eShop_Price.Enabled = true;

lbtn_Audit_eShop_Price.Attributes.Add("onclick",

"return lbtn_Audit_eShop_Price_Command(this, '" + Dt.Rows[i]["OrderId"].ToString() + "');");

}

}

}

[code]

2.用Ajax实现无刷新批量审核。

注意:这里用到的控件必须是Html控件,否则会引起回发。但在Repeater内部服务器控件也可以使用。

这里只需给input="btton"添加一个onclick属性,直接执行Ajax脚本。

脚本内容如下:

[code]

//批量审核

function Batch_Review()

{

if(!checkSelItem("OrderId","请选择订单!")) return false;

if(!confirm("确定要审核吗?")) return false;

var OrderIds = ""; //记录所有订单号

var elements = document.getElementsByName("OrderId");

for (var m=0; m < elements.length; m++){

if(m == elements.length - 1)

{

OrderIds = OrderIds + elements[m].value;

}

else

{

OrderIds = OrderIds + elements[m].value + ",";

}

}

var orderIdArr = OrderIds.split(',');

var newOrderIdStr = "";

var j = 0;//记录选择的订单个数

var position = "";//记录选择的订单位置

for(var i = 0;i

{

var chk_Id = "OrderId_"+orderIdArr[i];

if($_Id(chk_Id).checked)//记录选中的订单

{

if(i == orderIdArr.length - 1)

{

newOrderIdStr += orderIdArr[i];

position += i;

}

else

{

newOrderIdStr += orderIdArr[i]+",";

position += i + ",";

}

j++;

}

}

newOrderIdStr = RemoveRightComma(newOrderIdStr);//去除末尾逗号后的订单号

position = RemoveRightComma(position);//去除末尾逗号后的位置

$.ajax({

type: "POST",

url: "AjaxTest.aspx",

data: { Order_Id_Arr: newOrderIdStr, Action: "Batch_Review" },

success: function(msg) {

if (msg != "") {

for(var k = 0 ;k

{

var newOrderIdArr = newOrderIdStr.split(',');

var positionArr = position.split(',');

$_Id("OrderId_"+newOrderIdArr[k]).disabled = "disabled";

if(parseInt(positionArr[k])<10)

{

$_Id("rpt_Review_ctl0"+parseInt(positionArr[k])+"_lbtn_Audit_eShop_Price").innerHTML = "已审核";

$_Id("rpt_Review_ctl0"+parseInt(positionArr[k])+"_lbtn_Audit_eShop_Price").disabled = "disabled";

}

else

{

$_Id("rpt_Review_ctl"+parseInt(positionArr[k])+"_lbtn_Audit_eShop_Price").innerHTML = "已审核";

$_Id("rpt_Review_ctl"+parseInt(positionArr[k])+"_lbtn_Audit_eShop_Price").disabled = "disabled";

}

}

}

}

})

return true;

}

//去除右边逗号

function RemoveRightComma(str)

{

if(str == "") return;

var i;

for(i = str.length-1;i>=0;i--)

{

//charAt(i)取某一个位置的字符

if(str.charAt(i) != ",") break;

}

//截取字符串,substring(start,stop);返回的结果不包含最后一位

str = str.substring(0,i+1);

return str;

}

至此实例讲解结束。

最后回顾思路:

1.单条审核:在页面初始化时,给审核按钮加上onclick属性,执行页面脚本,单击审核后,后台的page_load事件根据Action选择执行的事件。

2.批量审核: 给批量审核按钮加上onclick属性,执行Ajax脚本,后台的page_load事件同样根据Action选择执行的事件。批量审核按钮必须为Html控件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245751.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

四线接近开关接线图_开关、电机、断路器、电热偶、电表接线图!非常齐全,快囤起来吧...

这是非常齐全的一篇电工接线图的文章&#xff0c;包含开关接线图断路器、接触器控制回路接线图&#xff0c;电机逆转、正转原理接线图&#xff0c;电表进出接线图&#xff0c;电路开关接线图&#xff0c;电热偶接线图&#xff0c;希望能帮到想学这些专业的朋友&#xff0c;不是…

cpu开机就是60℃_铅锤哥:十五种电脑开机黑屏的原因与解决思路

点击上面↑玩转电脑关注铅锤哥&#xff0c;轻松学电脑最近&#xff0c;很多朋友联系铅锤哥&#xff0c;由于疫情影响不能出门&#xff0c;很多同学只能把家里闲置很久的电脑拿出来办公或者上课&#xff0c;但是一开机&#xff0c;发现电脑黑屏没法用了。一般常说的黑屏故障分为…

文件 云存储服务器配置,文件和存储服务器配置

文件和存储服务器配置 内容精选换一换本课程主要针对openEuler操作系统工程师在基础运维工作&#xff0c;以文件共享服务器的搭建和运维为案例&#xff0c;讲解openEuler操作系统的基础知识&#xff0c;并培养基础运维操作能力。通过该课程的学习&#xff0c;能掌握openEuler操…

delphi 企业微信消息机器人_企业微信—群聊机器人

在企业微信群聊机器人接口对接天气API使用过程中&#xff0c;遇到 过一个问题&#xff0c;就是对于嵌套json数据如何进行嵌套的|一&#xff1a;"msgtype": "text",curl http://qyapi.weixin.qq.com/cgi-bin/webhook/send?key633a31f6-7f9c-4bc4-97a0-0ec1…

网站服务器需要定期重启吗,定期服务器重启的好处和障碍

对旧线程进行除尘的道歉。我想大家都错过了这个观点&#xff0c;特别是那个顽固的重启&#xff1f;我宁愿出售我的商品&#xff01;尼克斯管理员。问题是每周窗口应该是SCHEDULED。这并不意味着它必须被使用&#xff0c;事实上&#xff0c;它的优先选择是它不被使用&#xff0c…

docker卸载命令_Docker入门篇

Docker简介Docker是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中&#xff0c;然后发布到任何流行的 Linux或Windows 机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#xff0c;相互之间不会有任何接口Docker优…

属于服务器操作系统的是,属于服务器操作系统的是

属于服务器操作系统的是 内容精选换一换裸金属服务器操作系统无法正常启动&#xff0c;操作系统中毒&#xff0c;或裸金属服务器系统运行正常&#xff0c;但需要对系统进行优化&#xff0c;使其在最优状态下工作时&#xff0c;用户可以使用重装裸金属服务器的操作系统功能。重装…

lds天线技术流程图_音箱耳机入门,蓝牙真无线耳机中的LDS天线 「Soomal」

在2019年新一代的真无线耳机中&#xff0c;我们听到了比较多关于“LDS”天线的概念&#xff0c;它到底是什么样子的呢&#xff1f;我们通过漫步者TWS1和TWS5两款真无线耳机拆解&#xff0c;来看看真无线蓝牙耳机天线的样子。其中&#xff0c;TWS1不是LDS天线&#xff0c;而TWS5…

ubuntu修改服务器端口,服务器环境之4:ubuntu14.04安装tomcat,端口修改

一、下载tomcat二、上传服务器并解压1.创建文件夹mkdir /usr/java/tomcatcd /usr/java/tomcat2.上传rz -e弹出窗口中选择下载好的tar.gz文件&#xff0c;点击确认 3.解压tar -xzf apache-tomcat-8.0.36.tar.gz4.修改文件夹名(习惯&#xff0c;可跳过mv apache-tomcat-8.0.36 to…

hashmap为什么线程不安全_什么时候线程不安全?怎样做到线程安全?怎么扩展线程安全的类?...

本文同名博客老炮说Java&#xff1a;https://www.laopaojava.com/&#xff0c;每天更新Spring/SpringMvc/SpringBoot/实战项目等文章资料顺便再给大家推荐一套SpringCloud微服务教程&#xff0c;方便学习&#xff1a;SpringCloud微服务电商项目教程 - 老炮说Java-程序员编程资料…

光遇服务器维护都在干什么,光遇:全图毕业后该做什么?老玩家建议,这四件事不做会后悔...

原标题&#xff1a;光遇&#xff1a;全图毕业后该做什么&#xff1f;老玩家建议&#xff0c;这四件事不做会后悔光遇&#xff1a;全图毕业后该做什么&#xff1f;老玩家建议&#xff0c;这四件事不做会后悔前言&#xff1a;大家好&#xff0c;我是喜欢玩游戏、聊游戏的孟婆小叔…

加仓减仓口诀_做短线必备口诀

October短线口诀早上大跌可加仓&#xff0c;早上大涨要减仓下午大涨要减仓&#xff0c;下午大跌次日买上午下跌不买股&#xff0c;逢低加仓T0下午拉高不追涨&#xff0c;逢高减仓T1量价买卖口诀高位无量就拿&#xff0c;就算拿错也要拿高位放量趁早跑&#xff0c;哪怕跑错也要跑…

神雕侠侣2服务器维护,《神雕侠侣2》手游10月22日停服维护公告

亲爱的少侠为了给您带来更好的游戏体验,《神雕侠侣2》手游将于10月22日09:00-10:00进行例行停服维护&#xff0c;届时将无法登入游戏。若提前完成维护&#xff0c;我们将提前开服。请各位玩家提前做好准备,以免造成损失。维护结束后将统一奉上补偿,感谢您的支持与理解。新增功能…

包无法安装_R语言基础教程——第2章:R下载安装和环境搭建

R语言安装包下载 官网下载R安装包 下载地址为&#xff1a;https://cran.r-project.org 进入链接&#xff0c;如下图所示&#xff0c;在页面顶部提供了三个下载链接&#xff0c;分别对应三种操作系统&#xff1a;Windows、Mac和Linux。请选择自己操作系统对应的链接。这里以Wind…

charat越界返回什么_Java基本语法方法修饰符返回类型参数列表异常列表

方法[method name]定义方法[method]是类的成员之一&#xff0c;(因为在java中&#xff0c;方法不能单独定义&#xff0c;它必须在类之中)。修饰符 返回类型 方法名()[throws 异常类型]{ //方法体}方法名字&#xff1a;只要是一个合法的名字就可以&#xff0c;尽可能有意义。如&…

打包指令_Linux系统常用指令总结

来源 | CSDN 博客作者 | 不撸代码闲得慌&#xff0c;责编 | Carol出品 | CSDN云计算(ID&#xff1a;CSDNcloud)系统的运行级别0&#xff1a;关机1&#xff1a;单用户模式(可以找回丢失的密码)2&#xff1a;多用户状态没有网络服务3&#xff1a;多用户状态有网络服务4&#xff1…

python秒转化为时间格式_Python耗费时间秒转 天小时分钟秒 时间格式美化

在工作中经常会遇到将耗时 转换为天小时分秒的情况本Demo 中divmod默认返回元组&#xff0c;同时利用递归的思想# -*- coding: utf-8 -*-def seconds_format(time_cost: int):"""耗费时间格式转换:param time_cost::return:"""min 60hour 60 *…

angular做语言切换_angular多语言配置详解

angular的国际化方案&#xff0c;采用ngx-translate来实现。安装模块&#xff1a;npm install ngx-translate/core --save在根模块中导入&#xff1a;// other moduleimport {TranslateModule} from ngx-translate/core;NgModule({declarations: [AppComponent,],imports: [// …

cmd管道无法接收特定程序返回值_渗透不会反弹shell?来教你写一个cmd的shell

渗透不会反弹shell&#xff1f;来教你写一个cmd的shell包含的库&#xff1a;#include #include #include #include #include #pragma comment(lib, "Ws2_32.lib")#define DEFAULT_BUFLEN 1024winsock2和ws2tcpip两个库文件是用来初始化网络套接字的。windows用来初始…

有类似split的命令吗_5分钟学linux命令之split

情景介绍平时工作中&#xff0c;我习惯使用rz从本地上传文件到服务器&#xff0c;sz从服务器下载文件到本地&#xff0c;但对传输文件大小有限制&#xff0c;例如排查线上jvm的问题&#xff0c;需要生成了dump文件&#xff0c;可能有10G大&#xff0c;超过了限制&#xff0c;怎…