引用
#region 程序集 Newtonsoft.Json.dll, v4.5.0.0
// E:\Newtonsoft.Json.dll
#endregion
public DataTable RunProc(string ProcName, string Parameter)
{
try
{
db = new DataBaseDoor(GetConnection.getcon());
DataSet ds = new DataSet();
JsonTextReader JR = new JsonTextReader(new StringReader(Parameter));
int i = ; while (JR.Read())
{
if(JR.Value!=null&&JR.Value.ToString()!=",")
{
i++;
}
//JR.TokenType;
// JR.Value;
// JR.ValueType;
}
SqlParameter[] para = new SqlParameter[i/]; JsonTextReader JTR = new JsonTextReader(new StringReader(Parameter)); int j = ;
string key = "";
string value = "";
while (JTR.Read())
{ if (JTR.Value != null && JTR.Value.ToString() != ",")
{
if (j <= i)
{
if (j % == )
{ key = "";
if (JTR.Value != null)
{
key = JTR.Value.ToString().Replace("!@!", "\"");
}
}
else
{
value = "";
if (JTR.Value != null)
{
value = JTR.Value.ToString().Replace("!@!", "\"");
para[((j+)/)-] = new SqlParameter("@" + key, value);
}
} }
j++;
}
}
db.RunProcedure(ProcName, para, ref ds); return ds.Tables[];
}
catch (Exception ex)
{
throw ex;
}
finally
{
db.CloseConnection();
}
}
//JS调用 以及字符串特殊字符替换规则 var parameter = "{ ID:" + ID + ",Name:'" + $.trim($('#txt_groupname').val()).replace(/"/ig, '!@!') + "'}"; var result = RunNewProc('sp_UserLevel_AddGroupName', parameter); function RunNewProc(procname, Parameter) { if (procname.length > ) {
var returnmsg = ErpAjax("/RunProcedure.aspx?Proc=" + procname + "&Parameter="+Parameter+"");
if (returnmsg.length > ) {
return returnmsg;
}
else {
return '操作失败';
}
}
} function ErpAjax(url) {
var xmlhttp;
if (url.indexOf("?") > ) {
url = url + "&NowDateTimeSign=" + new Date().getTime();
}
else {
url = url + "?NowDateTimeSign=" + new Date().getTime();
}
if (window.ActiveXObject) {
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
else {
xmlhttp = new XMLHttpRequest();
} var url1 = url.split('?');
var url2 = url1[].toString().split('&'); var furl = url1[].toString() + "?"; for (var i = ; i < url2.length; i++) {
var j = url2[i].indexOf('='); if (i == ) {
furl += url2[i].toString().substring(, j) + "=" + encodeURIComponent(url2[i].toString().substring(j + ));
}
else {
furl += "&" + url2[i].toString().substring(, j) + "=" + encodeURIComponent(url2[i].toString().substring(j + ));
}
}
//encodeURIComponent
xmlhttp.open("POST", furl, false); xmlhttp.send();
return xmlhttp.responseText; }

JS 调用存储过程传递参数的更多相关文章

  1. 【HANA系列】SAP HANA XS使用JavaScript(JS)调用存储过程(Procedures)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Jav ...

  2. 【HANA系列】【第六篇】SAP HANA XS使用JavaScript(JS)调用存储过程(Procedures)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列][第六篇]SAP HANA XS ...

  3. SQL SERVER使用ODBC 驱动建立的链接服务器调用存储过程时参数不能为NULL值

    我们知道SQL SERVER建立链接服务器(Linked Server)可以选择的驱动程序非常多,最近发现使用ODBC 的 Microsoft OLE DB 驱动程序建立的链接服务器(Linked S ...

  4. js与php传递参数

    这个问题在网页开发时经常遇到,其实解决办法非常简单,就是几行代码的事,不过各种js.php书上都没有,百度下来也乱七八糟的,有的能用,有的不能用.小编遇到这问题时认认真真研究了一上午,研究出一点心得, ...

  5. js跳转传递参数

    额,利用j获取了GridView中选中行数据后,通过JavaScript做跳转,传递参数的时候发现,当参数有中文的时候就会乱码, 当然出现这种情况的时候就需要对跳转的url进行编码 var urlX ...

  6. vue.js中路由传递参数

    知识点:vue路由传递参数,第二个页面(A.B页面)拿到参数,使用参数 方法一:使用 <router-link :to="{name:'edithospital',params:{hi ...

  7. js获取url传递参数(转的,原作不详)

    这里是一个获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的request.querystring,PHP的$_GET 函数: <Script languag ...

  8. hibernate 调用存储过程返回参数

    Connection conn= getSession().connection(); CallableStatement cs=null; //指定调用的存储过程 cs = conn.prepare ...

  9. Java调用函数传递参数到底是值传递还是引用传递

    今天翻看微信上有关Java技术的公众号时,看到了一篇关于Java中值传递的问题,文章讨论了在Java中调用函数进行传参的时候到底是值传递还是引用传递这个面试时会问到的问题.之前也接触过类似的问题,但只 ...

随机推荐

  1. 2189 数字三角形W

    2189 数字三角形W 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold       题目描述 Description 数字三角形要求走到最后mod 100最大 输入描述 ...

  2. 你不知道的HTTP之HTTPS

    确保web安全的HTTPS HTTPS=HTTP+ 加密 + 认证 + 完整性保护 1.加密: 1)通信的加密 所谓互联网,是由能连通到全世界的网络组成的.无论世界哪个角 落的服务器在和客户端通信时, ...

  3. JS 字符串 时间 数字函数操作 事件

    字符串  操作 var s="abcdefg" s.tolowerCase()   转小写 s.toupperCase()   转大写 s.substring(2,5)   索引下 ...

  4. iphone图片简单处理

    使用sips批量缩放图片大小 >>sips -s format jpeg -Z 250 someImage.PNG --out myImage.JPEG 把someImage.PNG转换为 ...

  5. (三)maven之一个基本的pom.xml

    一个基本项目的pom.xml文件,通常会有以下三部分: 一.项目坐标,信息描述等. <modelVersion>4.0.0</modelVersion> <groupId ...

  6. 什么是Java Marker Interface(标记接口)

    先看看什么是标记接口?标记接口有时也叫标签接口(Tag interface),即接口不包含任何方法.在Java里很容易找到标记接口的例子,比如JDK里的Serializable接口就是一个标记接口. ...

  7. 操作系统项目:向Linux内核添加一个系统调用

    内容: 向Linux增加一个系统调用 撰写一个应用测试程序调用该系统调用 使用ptrace或类似的工具对该测试程序进行跟踪调 环境: 1.vmware workstation 15.0.0 2.ubu ...

  8. CPP-基础:关于引用

    1.什么是“引用”?申明和使用“引用”要注意哪些问题? 引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同. 申明一个引用的时候,切记要对其进行初始化. 引用声明完 ...

  9. OracleDBConsole启动不了

    今天要用OEM,然后去打开OracleDBConsoleXXX, 提示说什么么么2,然后就各种百度...最后发现...有断了网络连接之后就可以把它启动了...简直惨,不知道这是什么原理,还有Oracl ...

  10. Use-After-Free

    0x00 UAF利用原理 uaf漏洞产生的主要原因是释放了一个堆块后,并没有将该指针置为NULL,这样导致该指针处于悬空的状态(这个指针可以称为恶性迷途指针),同样被释放的内存如果被恶意构造数据,就有 ...