.NET ScriptManager PageMethod的应用 一次提交多行数据 (感觉像jquery 的$.ajax)
2010-06-23 09:57
555 查看
费话不多说,代码说明问题
前台HTML代码
代码
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<!-- 循环要处理的数据,数据放入HTML控件即可 -->
</ItemTemplate>
</asp:Repeater>
<input type="button" id="btn_save" value="保存" onclick="SaveData()"/>
<!-- 添加AJAX控件,EnablePageMethods设为true才可使用此功能 -->
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server" />
javascript代码
function SaveData() {
var tbl=document.getElementById("tbl");
var datas = new Array(tbl.rows.length - 1);
if (datas.length < 1) {
alert("不存在预定明细,不允许保存!");
return;
}
for (var i = 1; i < tbl.rows.length; i++) {
txt = tbl.rows[i].getElementsByTagName("input");
sel=tbl.rows[i].getElementsByTagName("select");
//alert(sel[0].value);return false;
datas[i - 1] = txt[5].value+ "," + txt[0].value + "," + txt[1].value + "," + txt[2].value + "," + txt[3].value+"," + txt[4].value + "," + sel[0].value;
}
//alert(cost);return false;
//后台方法,此处核心
PageMethods.GetData(datas, showResult);
}
//回调函数
function showResult(msg) {
if (msg == "0") {
alert("保存成功");
this.location = "List.aspx?currpage=" + $("#HiddenCurrpage").val();
}
else{
alert("保存失败");
}
}
}
后台代码:
[System.Web.Services.WebMethod]
public static string GetData(string[] datas)
{
//对数组进行操作,存入数据库,主从用事务处理。
//return "0";
}
OK 完成AJAX 操作,处理多行,没有那么烦索,也避免了页面刷新;
使用此方法javascript 要有基础,数据构造通过js完成
感受如题。
前台HTML代码
代码
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<!-- 循环要处理的数据,数据放入HTML控件即可 -->
</ItemTemplate>
</asp:Repeater>
<input type="button" id="btn_save" value="保存" onclick="SaveData()"/>
<!-- 添加AJAX控件,EnablePageMethods设为true才可使用此功能 -->
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server" />
javascript代码
function SaveData() {
var tbl=document.getElementById("tbl");
var datas = new Array(tbl.rows.length - 1);
if (datas.length < 1) {
alert("不存在预定明细,不允许保存!");
return;
}
for (var i = 1; i < tbl.rows.length; i++) {
txt = tbl.rows[i].getElementsByTagName("input");
sel=tbl.rows[i].getElementsByTagName("select");
//alert(sel[0].value);return false;
datas[i - 1] = txt[5].value+ "," + txt[0].value + "," + txt[1].value + "," + txt[2].value + "," + txt[3].value+"," + txt[4].value + "," + sel[0].value;
}
//alert(cost);return false;
//后台方法,此处核心
PageMethods.GetData(datas, showResult);
}
//回调函数
function showResult(msg) {
if (msg == "0") {
alert("保存成功");
this.location = "List.aspx?currpage=" + $("#HiddenCurrpage").val();
}
else{
alert("保存失败");
}
}
}
后台代码:
[System.Web.Services.WebMethod]
public static string GetData(string[] datas)
{
//对数组进行操作,存入数据库,主从用事务处理。
//return "0";
}
OK 完成AJAX 操作,处理多行,没有那么烦索,也避免了页面刷新;
使用此方法javascript 要有基础,数据构造通过js完成
感受如题。
相关文章推荐
- 使用 jQuery 调用 ASP.NET AJAX Page Method
- jQuery 中 ajax 提交数据应用的一个小demo
- A ScriptManager is required on the page to use ASP.NET AJAX Script Components
- Jquery 调用asp.net ajax (web service/static page method)的示例(二)---复杂参数
- 使用 jQuery 调用 ASP.NET AJAX Page Method
- Jquery 调用asp.net ajax (web service/static page method)的示例(一)---简单参数
- Asp.NET WebMethod: 使用Jquery的post发送信息的数据信息的大小限制
- 在MVC中如何在使用 MicrosoftMvcValidation验证的前提下使用 jQuery.Ajax 提交数据的时候检查验证是否通过
- JQuery和Ajax在ASP.NET MVC中的基本应用
- jQuery基于ajax()使用serialize()提交form数据的方法
- 新瓶旧酒ASP.NET AJAX(9) - 客户端脚本编程(Sys.Net命名空间下的WebServiceProxy、WebServiceError、Generated Proxy Classes以及调用WebService、PageMethod)
- JQuery使用Ajax同步提交数据
- 当 ASP.NET MVC 邂逅 JQuery.Ajax 提交数组
- 用jquery的ajax向前台提交数据
- Jquery利用ajax调用asp.net webservice的各种数据类型(总结篇)
- JQuery使用Ajax同步提交数据
- jQuery通过ajax快速批量提交表单数据
- asp.net 中用jquery的ajax 有时读不出数据
- ASP.NET MVC + Jquery 实现Ajax下拉框数据三级联动
- ASP.NET AJAX客户端编程之旅(五)——以组件的思想开发Ajax应用:行为、绑定及xml-script