C#论坛同步地址: http://www.cckan.net/thread-1065-1-1.html

AjaxPro向C#方法传对象,也可以说是AjaxPro将对象传向C#方法。意思就是如果你的C#方法的参数是对象的话应该怎么传
比如我的方法如下:

 [AjaxMethod()]/// <summary>/// 查询用户信息/// </summary>/// <param name="model">用户对象</param>/// <param name="_currentpage">当前页</param>/// <param name="_pagesite">每页行数</param>/// <returns></returns>public DataSet sp_select_users(Sys_Users model, int _currentpage, int _pagesite){//这里是方法实现}

那么在前台应该怎么传呢,其实很简单啊,大家看一下我的JS方法就知道了

$(function () {$("#btnSelect").click(function () {selectuser();});
});function selectuser() {//生成参数对象Objvar Obj = createParameter();//直接传Obj对象过去就行了var result = UserSelect.sp_select_users(Obj, 1, 10);
//下面是取到数据之后大家可以不关注if (result.value) {var ds = result.value;var table = ds.Tables[0];var pagecount = ds.Tables[1].Rows[0].pagecount;var sb = "<table width=\"90%\" align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"sb = sb + "<tr>"for (var i = 0; i < table.Columns.length; i++) {sb = sb + "<td>" + table.Columns.Name + "</td>";}sb = sb + "</tr>"//Rowsfor (var i = 0; i < table.Rows.length; i++) {var dr = table.Rows;sb = sb + "<tr οnmοuseοver=\"this.style.backgroundColor='#F3F7F8'\" " +"οnmοuseοut=\"this.style.backgroundColor=''\">"for (var j = 0; j < table.Columns.length; j++) {sb = sb + "<td>" + eval('dr.' + table.Columns[j].Name) + "</td>";}sb = sb + "</tr>";}sb = sb + ' </table>';$("#sysusertable").html(sb)}
}

当然我必须得提供一下我的createParameter方法,也就是这个方法来完成的Obj对象

/// <reference path="jquery-1.4.1-vsdoc.js" />
/**
*作者:苏飞
*/
function createParameter() {var objStr = "var Obj = new Object();";//转字符和整数类型$("[ajax='true']").each(function () {var value = $(this).attr("value");if (value == "") {value = "-1";}objStr = objStr + "Obj." + $(this).attr("id") + " = \"" + value + "\";";});//转日期类型$("[ajax='true_d']").each(function () {var value = $(this).attr("value");if (value == "") {value = "2000-01-01";}objStr = objStr + "Obj." + $(this).attr("id") + " = " + getdate(value) + ";";});//转Float类型$("[ajax='true_f']").each(function () {var value = $(this).attr("value");if (value == "") {value = "-1.00";}objStr = objStr + "Obj." + $(this).attr("id") + " = parseFloat('" + value + ".00');";});eval(objStr);return Obj;//到这里已经生成了Obj对象
}
function getdate(strdate) {return 'new Date(' + strdate.replace(/\d+(?=-[^-]+$)/,function (a) { return parseInt(a, 10) - 1; }).match(/\d+/g) + ')';
}

好了,大家如果想使用的话就在你的查询条件上增加一个条件就行了
比如
ajax='true' 代表iint和String
ajax='true_d' 时间类型
ajax='true_f'  浮点类型,和decimal类型
例子

View Code

 <form id="form1" runat="server"><div><table cellspacing="0" cellpadding="0" width="100%" border="0"><tr><td height="25" width="30%" align="right">分组ID :</td><td height="25" width="*" align="left"><asp:TextBox ID="userclass_id" ajax='true' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">角色ID :</td><td height="25" width="*" align="left"><asp:TextBox ID="role_id" ajax='true' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">代理ID sys_agent :</td><td height="25" width="*" align="left"><asp:TextBox ID="agent_id" ajax='true' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">用户名 :</td><td height="25" width="*" align="left"><asp:TextBox ID="username" ajax='true' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">电子邮件 :</td><td height="25" width="*" align="left"><asp:TextBox ID="email" ajax='true' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">余额 :</td><td height="25" width="*" align="left"><asp:TextBox ID="balance" ajax='true_f' runat="server" Width="200px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">开始时间 :</td><td height="25" width="*" align="left"><asp:TextBox ID="st" ajax='true_d' runat="server" Width="198px"></asp:TextBox></td></tr><tr><td height="25" width="30%" align="right">结束时间 :</td><td height="25" width="*" align="left"><asp:TextBox ID="et" ajax='true_d' runat="server" Width="200px"></asp:TextBox></td></tr></table></div><input id="btnSelect" type="button" value="button" /><br/><br/><asp:Table ID="sysusertable" runat="server"></asp:Table></form>

下面大家看看效果吧

总结一下:

1.在参数的时候可以和后台对象的个数不一样

2.参数的数据类型必须一样。

3.只有整数和String类型的不需要转化,其它的都必须强制转化类型才行。

转载于:https://www.cnblogs.com/sufei/archive/2012/11/10/2764335.html

AjaxPro怎么传对象参数相关推荐

  1. java方法传对象参数_Java方法中的参数太多,第2部分:参数对象

    java方法传对象参数 在上一篇文章中 ,我研究了与方法和构造函数的长参数列表相关的一些问题. 在那篇文章中,我讨论了用自定义类型替换基元和内置类型以提高可读性和类型安全性. 这种方法使方法或构造函数 ...

  2. 微信小程序 navigateTo 传对象参数

    今天在做项目的时候 遇到 navigateTo 需要传递 对象的参数 苦苦接收的 结果 是 这个样子的: 解决办法 当微信小程序navigateTo传入参数是个object时,请使用JSON.strt ...

  3. RestTemplate发送form-data请求上传rul资源文件及对象参数

    需求 上传文件服务中的文件到其他平台 接口描述:用于上传工程日志相关资料 请求url:/cq-szh-projectdocumentscomputesvc/api/service/addEnginee ...

  4. 06Java第六课 获取输入框内容(传对象,参数,值)

    在上一课中实现了对 按钮被点击的监听,接下来要实现 对输入框内容的获取 由之前的界面中可知,账号和密码在输入框对象中,也就是nameInput和pwdInput对象中.当用户输入了账号和密码并点击按钮 ...

  5. 微信小程序连接oracle数据库,【微信小程序】关于微信小程序中跳转传参数与传对象的解析...

    这篇文章主要介绍了微信小程序 跳转传参数与传对象详解及实例代码的相关资料,需要的朋友可以参考下 微信小程序 跳转传参数 传对象 微信小程序跳转传参 一般都是传字符串到下一页,如果要想传对象怎么办呢? ...

  6. 对象存储HTML自定义属性,设置对象属性_对象存储服务 OBS_SDK参考_Node.js_上传对象_华为云...

    开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助.接口参考文档详细介绍了每个接口的参数和使用方法. 您可以在上传对象时设置对象属性.对象属性包含对象长 ...

  7. lombok 的bug?lombok 导致 springmvc 使用 @RequestBody注解 接收 json数据 对象参数绑定失败

    大家好,我是烤鸭:     lombok 导致 springmvc 使用 @RequestBody注解 接收 json数据 对象参数绑定失败.     环境版本:         spring 5.x ...

  8. delphi中的函数传参如何传枚举参数_我是这样使用SpringBoot(API传参)

    spring boot 传参 spring boot 中的Controller或者RestController接收参数的方法是一样的.这章目标是对几种常用的传参都写个例子. 创建package: co ...

  9. java foreach参数_java – Mybatis foreach迭代复杂对象参数中的整数列表

    我在Play Framework 2.3.6 Java项目中使用MyBatis 3.2.8.我已经挣扎了几天,迭代遍历复杂对象参数中的MyBatis映射器的整数列表.这是我的设置: 我在EventFi ...

  10. 微信小程序页面跳转如何传递对象参数

    前几天一个月薪35k的兄弟,给我推了一个人工智能学习网站,看了一段时间挺有意思的.包括语音识别.机器翻译等从基础到实战都有,很详细,分享给大家.大家及时保存,说不定啥时候就没了. 微信小程序页面跳转如 ...

最新文章

  1. winscp开启ftp_如何使用winscp,如何使用winscp连接FTP
  2. 我是怎样成长为系统架构师的
  3. python用途与前景-2019年Python就业及发展前景如何 看完你就清晰了
  4. Visual Studio 快捷键使用方法
  5. 回归分析预测_使用回归分析预测心脏病。
  6. handler 消息处理机制
  7. web 前端 如何分享到instagram_好程序员web前端教程分享前端javascript练习题三
  8. 如何查html病毒svchost.exe,小编教你在Win7系统中检查svchost.exe进程是否为病毒的方法步骤...
  9. 使用Quartus进行功能仿真时出现“testbench_vector_input_file option does not exist”的解决方法
  10. [解题报告]Codeforces 105D Entertaining Geodetics
  11. 禁用 device/credential guard_iOS 13.3.1 Beta版中引入了禁用U1超宽带芯片的开关
  12. 并行程序设计导论pdf电子书_并行程序设计导论
  13. 2022牛客寒假算法基础集训营1 H题 牛牛看云
  14. XP桌面图标阴影的去除
  15. 三进制计算机_三进制会取代二进制计算机吗?
  16. MySQL Flashback拯救手抖党
  17. 动态主机配置协议(DHCP)
  18. The supplied data appears to be in the Office 2007+ XML问题解决
  19. 基因数据处理104之SparkBWAMaster文件得到空文件,中间sam文件找不到
  20. nodejs 初探 api试用

热门文章

  1. 鸿蒙系统nova3i,华为nova3i无惧大型手游:打造丝般顺滑娱乐体验
  2. python机器学习入门实例-老司机学python篇:第一季(基础速过、机器学习入门)
  3. Remove Duplicates from Sorted Array
  4. SqlTransaction事务和Response.Redirect
  5. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 18. 基于Claim和Policy的授权 下 - 自定义Policy...
  6. vue____后台管理系统搭建(推荐,懒得自己写了)
  7. 洛谷P3509 [POI2010]ZAB-Frog
  8. 深入Linux内核架构(中文版)pdf
  9. SpringMVC, Spring和Mybatis整合案例一
  10. html5中让页面缩放的4种方法