首页 > 语言 > JavaScript > 正文

Javascript连接Access数据库完整实例

2024-05-06 16:24:17
字体:
来源:转载
供稿:网友

这篇文章主要介绍了Javascript连接Access数据库的方法,涉及javascript针对access数据库的连接、关闭及增删改查等常用操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了Javascript连接Access数据库的方法。分享给大家供大家参考。具体实现方法如下:

 

 
  1. var roc = roc || {}; 
  2. roc.db = roc.db ||{}; 
  3. //创建一个连接 
  4. roc.db.createDb = function(){ 
  5. var conn = new ActiveXObject("ADODB.Connection"),  
  6. fso = new ActiveXObject("Scripting.FileSystemObject"), 
  7. connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fso.GetFile("./db/Sigma.mdb"); 
  8. conn.Open(connstr);//打开数据库  
  9. roc.db.conn = conn; 
  10. return roc.db.conn; 
  11. }; 
  12. //获取连接 
  13. roc.db.getDb = function(){ 
  14. if( roc.db.conn ){ 
  15. return roc.db.conn; 
  16. }else
  17. return roc.db.createDb(); 
  18. }; 
  19. //关闭连接 
  20. roc.db.closeConn = function(){ 
  21. if( roc.db.conn ){ 
  22. roc.db.conn.close(); 
  23. roc.db.conn = null
  24. }; 
  25. //获取结果集 
  26. roc.db.getRs = function( sqlStr ){ 
  27. var mysql = roc.dom.trim( sqlStr ); 
  28. if(mysql == ''){return;} 
  29. var rs = new ActiveXObject("ADODB.Recordset"), 
  30. myConn = roc.db.getDb(); 
  31. rs.open( sqlStr , myConn );  
  32. return rs;  
  33. }; 
  34. //关闭结果集 
  35. roc.db.closeRs = function( rs ){ 
  36. rs.close(); 
  37. rs =null
  38. }; 
  39. //更新、插入 
  40. roc.db.execute = function( sqlStr ){ 
  41. var myConn = roc.db.getDb(); 
  42. myConn.execute( sqlStr ); 
  43. roc.db.closeConn(); 
  44. }; 
  45. /*---------Sigma:“我任你践踏我的尊严而毫不生气,是因为我爱你。”---------*/ 
  46. roc.dom = roc.dom ||{}; 
  47. roc.dom.id = function( id ){ 
  48. if(typeof id == 'string' || id instanceof String) { 
  49. return document.getElementById(id); 
  50. else if(id && id.nodeName && (id.nodeType == 1 || id.nodeType == 9)) { 
  51. return id; 
  52. return null;  
  53. }; 
  54. /** 
  55. * @method tagName 根据标签获取指定dom元素 
  56. * @param {String} tagName 元素标签名称 
  57. * @param {HTMLElement} el 元素所属的文档对象 默认为当前文档 
  58. * @return {HTMLElement} 返回HTMLElement元素 
  59. */ 
  60. roc.dom.tagName = function(tagName, el) { 
  61. var el = el || document; 
  62. return el.getElementsByTagName(tagName); 
  63. }; 
  64. //删除左右两端的空格  
  65. roc.dom.trim = function (str) {  
  66. return (str+'').replace(/(^/s*)|(/s*$)/g, ""); 
  67. /** 
  68. * @method show 显示目标元素 
  69. * @param {Element} element 目标元素或目标元素的id 
  70. * @param {String} element 目标元素 
  71. */ 
  72. roc.dom.show = function (element) { 
  73. element = roc.dom.id(element); 
  74. element.style.display = ''
  75. return element; 
  76. }; 
  77. /** 
  78. * @method hide 隐藏目标元素 
  79. * @param {Element} element 目标元素或目标元素的id 
  80. * @param {String} element 目标元素 
  81. */ 
  82. roc.dom.hide = function (element) { 
  83. element = roc.dom.id(element); 
  84. element.style.display = 'none'
  85. return element; 
  86. }; 
  87. /** 
  88. * @method hasClass 判断元素是否含有 class 
  89. * @param {Element} el 元素 
  90. * @param {String} className class 名称 
  91. */ 
  92. roc.dom.hasClass = function(el, className){ 
  93. var re = new RegExp('(^|//s)' + className + '(//s|$)'); 
  94. return re.test(el.className); 
  95. }; 
  96. /** 
  97. * @method addClass 给元素添加 class  
  98. * @param {Element} el 元素 
  99. * @param {String} className class 名称 
  100. */ 
  101. roc.dom.addClass = function(el, className){ 
  102. if(!roc.dom.hasClass(el, className)){ 
  103. el.className = el.className + ' ' + className; 
  104. }; 
  105. /** 
  106. * @method removeClass 给元素移除 class 
  107. * @param {Element} el 元素 
  108. * @param {String} className class 名称 
  109. */ 
  110. roc.dom.removeClass = function(el, className){ 
  111. var re = new RegExp('(^|//s)' + className + '(?://s|$)'
  112. el.className = el.className.replace(re, '$1'); 
  113. }; 
  114. /** 
  115. * date对象命名空间 
  116.  
  117. * @namespace 
  118. * @name data 
  119. */ 
  120. roc.date = roc.date || {}; 
  121. /** 
  122. * @method format 对目标日期对象进行格式化 
  123. * @param {Object} timestamp 目标日期对象 
  124. * @return {String} str 格式化后的时间 
  125. */ 
  126. roc.date.format = function(timestamp) { 
  127. if(timestamp =='' )return ''
  128. var str = ''
  129. temptime = new Date(Number(timestamp)); 
  130. str += temptime.getFullYear() + '-'
  131. str += temptime.getMonth() + 1 + '-'
  132. str += temptime.getDate() + ' '
  133. str += String(temptime.getHours()).length > 1 ? (temptime.getHours() + ':') : ('0' + temptime.getHours() + ':'); 
  134. str += String(temptime.getMinutes()).length > 1 ? (temptime.getMinutes()) : ('0' + temptime.getMinutes()); 
  135. return str; 
  136. }; 
  137. /** 
  138. * cookie对象命名空间 
  139.  
  140. * @namespace 
  141. * @name cookie 
  142. */ 
  143. roc.cookie = roc.cookie || {}; 
  144. /** 
  145. * @method set 
  146. * @param {String} name cookie的键 
  147. * @param {String} value cookie的值 
  148. * @param {String} expires 失效时间(小时) 
  149. * @param {String} domain domain域  
  150. * @param {String} path 路径  
  151. * @param {String} secure 是否支持https  
  152. */ 
  153. roc.cookie.set = function(name, value, expires, domain, path, secure) { 
  154. var text = encodeURIComponent(value), date = expires; 
  155. if(date && typeof date === 'number') { 
  156. date = new Date(); 
  157. date.setTime(date.getTime() + (expires * 3600000)); 
  158. if(date instanceof Date) { 
  159. text += '; expires=' + date.toUTCString(); 
  160. if(domain) { 
  161. text += '; domain=' + domain; 
  162. if(path) { 
  163. text += '; path=/' + path; 
  164. else { 
  165. text += '; path=/'
  166. if(secure) { 
  167. text += '; secure'
  168. document.cookie = name + '=' + text; 
  169. }; 
  170. /** 
  171. * @method get 
  172. * @param {String} name cookie的键  
  173. */ 
  174. roc.cookie.get = function(name) { 
  175. var ret, 
  176. m; 
  177. if(name) { 
  178. if((m = document.cookie.match('(?:^| )' + name + '(?:(?:=([^;]*))|;|$)'))) { 
  179. ret = m[1] ? decodeURIComponent(m[1]) : ''
  180. return ret; 
  181. }; 
  182. roc.util = roc.util || {}; 
  183. roc.util.loger = function( type ,msg ){ 
  184. switch(type){ 
  185. case 'pop':  
  186. alert(msg); 
  187. break
  188. case 'float':break
  189. default:break
  190. }; 
  191. roc.util.resultBlink = function( msg ){ 
  192. //操作闪烁提示 
  193. var $ = roc , 
  194. opt = $.dom.id("optTip"); 
  195. $.util.toogle = $.util.toogle || 0; 
  196. clearTimeout(roc.util.t);//调试 
  197. opt.innerHTML = msg ; 
  198. $.dom.show(opt); 
  199. opt.className = "blink" + $.util.toogle%2; 
  200. $.util.toogle++; 
  201. roc.util.t = setTimeout(function(){ 
  202. $.dom.hide(opt); 
  203. },$.config.BLINK_DELAY); 
  204. }; 
  205. roc.util.onlyInputNumber = function( id ){ 
  206. //限制文本框、文本域只能输入数字 
  207. var $ = roc , 
  208. num = $.dom.id( id ); 
  209. if( num.tagName.toLowerCase() != 'input' || num.tagName.toLowerCase() != 'textarea' ){ 
  210. return ; 
  211. $.util.addEvent( num , 'keypress' , function( e ){ 
  212. var e = e || window.event ; 
  213. if(e.keyCode >= 48 && e.keyCode <= 57){alert() 
  214. return true
  215. return false
  216. }); 
  217. }; 
  218. roc.util.addEvent = function(elem, type, fn, useCapture) { 
  219. if(elem.addEventListener) { //DOM2.0 
  220. elem.addEventListener(type, fn, useCapture); 
  221. return true
  222. else if(elem.attachEvent) { //IE5+ 
  223. elem.attachEvent('on' + type, fn); 
  224. return true
  225. else { //DOM 0 
  226. elem['on' + type] = fn; 
  227. }; 
  228. roc.config = roc.config || {}; 
  229. roc.config = roc.config ||{ 
  230. BLINK_DELAY:3000, 
  231. SELECT_DELAY:1000 
  232. roc.search = roc.search || {}; 
  233. roc.search.getValues = function( e ){ 
  234. //批量获取表单值,用于插入 
  235. var $ = roc, 
  236. allIsNull = true
  237. wrapStr = function( num ){ 
  238. return '"'+ num + '"'
  239. }, 
  240. vals =[]; 
  241. for(var i in e[0]){ 
  242. var v =$.dom.trim($.dom.id( e[0][i] ).value + ''); 
  243. if( v != ''){ 
  244. allIsNull = false
  245. switch( e[1][i] ){ 
  246. case 'date'
  247. case 'text'
  248. vals.push( wrapStr(v) ); 
  249. break
  250. case 'num'
  251. vals.push( v ); 
  252. break
  253. default:break
  254. if(allIsNull){ 
  255. return false
  256. return vals.join(','); 
  257. }; 
  258. roc.search.getSelSql = function(){ 
  259. //组装搜索sql 
  260. var $ = roc, 
  261. addr = $.dom.trim($.dom.id("s_uaddr").value), 
  262. phone = $.dom.trim($.dom.id("s_uphone").value), 
  263. style = $.dom.trim($.dom.id("s_style").value), 
  264. year = $.dom.trim($.dom.id("s_year").value ), 
  265. month = $.dom.trim($.dom.id("s_month").value), 
  266. date = $.dom.trim($.dom.id("s_date").value), 
  267. datetype = $.dom.trim($.dom.id("s_datetype").value), 
  268. mysql = 'select * from inslist where 1=1 '
  269. datetypeName = datetype == 0 ? 'selltime':'addtime'
  270. if( addr != ''){ 
  271. mysql += ' and uaddr like "%' + addr + '%"';  
  272. if( phone != ''){ 
  273. mysql += ' and uphone ="' + phone + '"'
  274. if( style != ''){ 
  275. mysql += ' and typeid = ' + style + ''
  276. if( year !=''){ 
  277. mysql += ' and year(' + datetypeName + ') = ' + year + ''
  278. if( month !=''){ 
  279. mysql += ' and month(' + datetypeName + ') = ' + month + ''
  280. if( date !=''){ 
  281. mysql += ' and date(' + datetypeName + ') = ' + date + ''
  282. return mysql; 
  283. }; 
  284. //搜索 
  285. roc.search.seeking = function(){ 
  286. if( !roc.search.getLock()){return;} 
  287. var $ = roc , 
  288. mySql = $.search.getSelSql(); 
  289. html = $.search.getSel( mySql); 
  290. $.search.setLock(false); 
  291. $.dom.id("searchResult").innerHTML = html; 
  292. $.util.resultBlink("查询完毕");//闪烁 
  293. }; 
  294. roc.search.getSel = function( sqlStr ){ 
  295. //查询 
  296. var $ = roc, 
  297. rs = $.db.getRs( sqlStr ), 
  298. filtRs = function ( str ){//处理字段 
  299. return ( str + '' ) == 'null' ? '':str; 
  300. }, 
  301. num = 1; 
  302. total_receive = 0, 
  303. total_prize = 0, 
  304. html = "<table class='list' id='memoryDetails'>" 
  305. "<colgroup>" 
  306. "<col class='pid' />" 
  307. "<col class='uaddr' />" 
  308. "<col class='phone' />" 
  309. "<col class='number'/>" 
  310. "<col class='money' span='3'/>" 
  311. "<col class='number' />" 
  312. "<col class='phone' />" 
  313. "<col class='number' />" 
  314. "<col class='date' />" 
  315. "<col class='date' />" 
  316. "</colgroup>" 
  317. "<tr class='secondRow doNotFilter'>" 
  318. " <th class='pid'> 序号 </th>" 
  319. " <th class='uaddr'> 用户地址 </th>" 
  320. " <th class='phone'> 用户电话 </th>" 
  321. " <th class='number'> 型号 </th>" 
  322. " <th class='money'> 代收款 </th>" 
  323. " <th class='money'> 货款 </th>" 
  324. " <th class='money'> 余额 </th>" 
  325. " <th class='number'> 安装人 </th>" 
  326. " <th class='phone'> 销售电话 </th>" 
  327. " <th class='number'> 备注 </th>" 
  328. " <th class='date'> 销售日期 </th>" 
  329. " <th class='date'> 记录时间 </th>" 
  330. "</tr>"
  331. while(!rs.EOF)  
  332. var id = num ,//filtRs(rs.Fields("id") ), 
  333. uaddr = filtRs(rs.Fields("uaddr") ), 
  334. uphone = filtRs(rs.Fields("uphone") ), 
  335. typeid = filtRs(rs.Fields("typeid") ), 
  336. received = filtRs(rs.Fields("received") ), 
  337. prize = filtRs(rs.Fields("prize") ), 
  338. unreceived = filtRs(rs.Fields("unreceived") ), 
  339. installerid = filtRs(rs.Fields("installerid") ), 
  340. sellerid = filtRs(rs.Fields("sellerid") ), 
  341. remark = filtRs(rs.Fields("remark") ), 
  342. selltime = $.date.format(filtRs(rs.Fields("selltime") )), 
  343. addtime = $.date.format(filtRs(rs.Fields("addtime") ) ); 
  344. html += "<tr jsselect='browzr_data'>" 
  345. +"<td class='pid'>" + id + "</td>" 
  346. +"<td class='uaddr'>" + uaddr + "</td>" 
  347. +"<td class='phone'>" + uphone + "</td>" 
  348. +"<td class='number'>" + typeid + "</td>" 
  349. +"<td class='money'>" + received + "</td>" 
  350. +"<td class='money'>" + prize + "</td>" 
  351. +"<td class='money'>" + unreceived + "</td>" 
  352. +"<td class='number'>" + installerid + "</td>" 
  353. +"<td class='phone'>" + sellerid + "</td>" 
  354. +"<td class='number'>" + remark + "</td>" 
  355. +"<td class='date'>" + selltime + "</td>" 
  356. +"<td class='date'>" + addtime + "</td>" 
  357. +"</tr>"
  358. //统计项 
  359. total_receive += received, 
  360. total_prize += prize, 
  361. num++; 
  362. rs.moveNext(); 
  363. }  
  364. html = html  
  365. +"<tr class='total doNotFilter'>" 
  366. +"<td class='pid'></td>" 
  367. +"<td class='uaddr'>Σ </td>" 
  368. +"<td class='number'></td>" 
  369. +"<td class='number'></td>" 
  370. +"<td class='number'>" + total_receive +"</td>" 
  371. +"<td class='number'>" + total_prize +"</td>" 
  372. +"<td class='number'>" + (total_prize - total_receive ) +"</td>" 
  373. +"<td class='number'></td>" 
  374. +"<td class='number'></td>" 
  375. +"<td class='number'></td>" 
  376. +"<td class='date'></td>" 
  377. +"<td class='date'></td>" 
  378. +"</table>"
  379. $.db.closeRs(rs); 
  380. $.db.closeConn();  
  381. return html; 
  382. }; 
  383. roc.search.getLock = function(){ 
  384. //查询锁 
  385. iftypeof roc.search.searchLock == 'undefined' ){ 
  386. roc.search.setLock(false); 
  387. return roc.search.searchLock; 
  388. }; 
  389. roc.search.setLock = function( key ){ 
  390. roc.search.searchLock = key; 
  391. }; 
  392. //[[id],[type]] 
  393. roc.search.addEls = [[ 
  394. "uaddr"
  395. "uphone"
  396. "typeid"
  397. "received"
  398. "prize"
  399. "unreceived"
  400. "installerid"
  401. "sellerid"
  402. "remark"
  403. "selltime" 
  404. ],[ 
  405. 'text'
  406. 'text'
  407. 'num'
  408. 'num'
  409. 'num'
  410. 'num'
  411. 'num'
  412. 'num'
  413. 'text'
  414. 'date' 
  415. ]]; 
  416. roc.search.insert = function(){ 
  417. //插入安装单记录 
  418. var $ = roc, 
  419. getV = $.search.getValues( $.search.addEls ); 
  420. if(!getV){ 
  421. $.util.loger('pop','请填写信息后再保存!'); 
  422. return;  
  423. var sqlStr = 'insert into inslist (uaddr,uphone,typeid,received,prize,unreceived,installerid,sellerid,remark,selltime) values ('+ getV +')'
  424. $.db.execute( sqlStr ); 
  425. $.util.resultBlink('保存安装单成功'); 
  426. }; 
  427. /*显示与隐藏*/ 
  428. roc.dom.switchDiv = function( objDiv){ 
  429. var $ = roc , 
  430. cookieName = objDiv.id + 'cookie'
  431. if( objDiv.style.display =='' || objDiv.style.display =='none' ){ 
  432. $.dom.show( objDiv ); 
  433. $.cookie.set(cookieName,0,9999999); 
  434. }else{  
  435. $.dom.hide( objDiv ); 
  436. $.cookie.set(cookieName,1,9999999); 
  437. }; 
  438. //货物型号操作 
  439. roc.tstyle = roc.tstyle || {}; 
  440. roc.tstyle.els = [ 
  441. ['tname','tprize','tdesc'], 
  442. ['text','text','text'
  443. ]; 
  444. roc.tstyle.insert = function(){ 
  445. //插入记录 
  446. var $ = roc, 
  447. getV = $.search.getValues( $.tstyle.els ); 
  448. if( !getV ){ 
  449. $.util.loger('pop','请填写信息后再保存!'); 
  450. return;  
  451. var sqlStr = 'insert into type ( tname , tprize , tdesc ) values ('+ getV +')'
  452. //$.util.loger('pop',sqlStr); 
  453. $.db.execute( sqlStr ); 
  454. $.util.resultBlink('保存成功!'); 
  455. $.util.flushInput($.tstyle.els); 
  456. }; 
  457. roc.util.flushInput = function( els ){ 
  458. var $ = roc ; 
  459. for(var i = 0 ; i < els.length ; i ++){ 
  460. var e = $.dom.id(els[i]+''); 
  461. /* if(e.tagName == 'input' && e.type =='text'){*/ 
  462. e.value = ''
  463. /*}*/ 
  464. }; 
  465. //type{id,tname,tprize} 
  466. roc.tstyle.getStyle = function( optId ){ 
  467. //获取类型列表 
  468. var $ = roc , 
  469. mySql = 'select * from type where isdel = 0 '
  470. rs = $.db.getRs( mySql ), 
  471. filtRs = function ( str ){//处理字段 
  472. return (str+'')=='null' ? '':str; 
  473. }, 
  474. myOpt = $.dom.id( optId ), 
  475. optIndex = 1; 
  476. while(! rs.EOF ){ 
  477. var id = filtRs(rs.Fields('id')), 
  478. prize = filtRs(rs.Fields('tprize')), 
  479. name = filtRs(rs.Fields('tname')); 
  480. desc = filtRs(rs.Fields('tdesc')); 
  481. myOpt.options[optIndex] = new Option( name , id ); 
  482. myOpt.options[optIndex].title = '价格:' + prize + ' | 描述:' + desc; 
  483. optIndex++; 
  484. rs.moveNext(); 
  485. $.db.closeRs(rs); 
  486. $.db.closeConn();  
  487. }; 
  488. ;(function(){ 
  489. var $ = roc ; 
  490. $.dom.id("save").onclick = function(){ 
  491. //保存 
  492. $.search.insert(); 
  493. $.dom.id("searchBtn").onclick = function(){ 
  494. //提检 
  495. $.search.seeking(); 
  496. //初始化查询安装单 年 
  497. for(var i = 0 ; i <= 10 ; i++ ){ 
  498. $.dom.id("s_year").options[i] = new Option(2010 + i , 2010 + i ); 
  499. if( 2010+i+'' == (new Date()).getYear() ){ 
  500. $.dom.id("s_year").options[i].selected = true
  501. //初始化查询安装单月份 
  502. for(var i = 1 ; i <= 12 ; i++ ){ 
  503. $.dom.id("s_month").options[i] = new Option(i,i); 
  504. //提检条件字段id 修改触发查询 
  505. $.dom.s_fields = ["s_uaddr","s_uphone","s_style","s_datetype",'s_year','s_month','s_date']; 
  506. for(var i = 0 ; i < $.dom.s_fields.length ; i ++){ 
  507. var f = $.dom.s_fields[i]; 
  508. $.dom.id(f).onpropertychange = function(){ 
  509. if(event.propertyName == 'value'){ 
  510. $.search.setLock(true); 
  511. if($.search.t){ 
  512. clearTimeout($.search.t); 
  513. $.search.t = setTimeout(function(){ 
  514. $.search.seeking(); 
  515. },$.config.SELECT_DELAY); 
  516. $.dom.id(f).onfocus = function(){ 
  517. $.dom.addClass(this,"focusit"); 
  518. }; 
  519. $.dom.id(f).onblur = function(){ 
  520. $.dom.removeClass(this,"focusit"); 
  521. }; 
  522. $.dom.id('saveType').onclick = function(){ 
  523. //货物类型 
  524. $.tstyle.insert(); 
  525. }; 
  526. //取出类型列表 
  527. $.tstyle.getStyle('typeid'); 
  528. $.tstyle.getStyle('s_style'); 
  529. /* //$.dom.id("s_uaddr").onkeyup = $.dom.id("s_uphone").onkeyup = $.dom.id("s_style").onkeyup = function(){ 
  530. $.dom.id("s_uaddr").onblur = $.dom.id("s_uphone").onblur = $.dom.id("s_style").onblur = function(){ 
  531. $.dom.removeClass(this,"focusit"); 
  532. } 
  533. $.dom.id("s_uaddr").onfocus = $.dom.id("s_uphone").onfocus = $.dom.id("s_style").onfocus = function(){ 
  534. $.dom.addClass(this,"focusit"); 
  535. }*/ 
  536. //导航样式切换 
  537. for(var i = 0 ; i < $.search.addEls.length ; i++ ){ 
  538. var curObj = $.dom.id($.search.addEls[0][i]+''); 
  539. curObj.onfocus = function(){ 
  540. $.dom.addClass(this,'focusit'); 
  541. curObj.onblur = function(){ 
  542. $.dom.removeClass(this,'focusit'); 
  543. //添加导航点击事件 
  544. var lis = $.dom.tagName('li',$.dom.id("ulNav")); 
  545. for(var i = 0 ; i < lis.length ; i ++ ){ 
  546. $.dom.hide( $.dom.id(lis[i].id + 'Div')); 
  547. lis[i].onclick = function(){ 
  548. for(var n = 0 ; n < lis.length ; n ++ ){ 
  549. $.dom.removeClass(lis[n],'click'); 
  550. $.dom.hide( $.dom.id(lis[n].id + 'Div')); 
  551. $.dom.show( $.dom.id(this.id + "Div")); 
  552. $.dom.addClass(this,"click"); 
  553. $.cookie.set('showWhichDiv'this.id); 
  554. //默认的载入显示页面 
  555. var showWhichDiv = $.cookie.get("showWhichDiv") || "searchList"
  556. $.dom.addClass($.dom.id(showWhichDiv),"click"); 
  557. $.dom.show($.dom.id(showWhichDiv + 'Div')); 
  558. //日期控件,感谢此控件开发者的分享,祝你有个好女朋友! 
  559. J('#selltime').calendar({ format:'yyyy-MM-dd HH:mm:ss' }); 
  560. var numFields = ['s_uphone','s_date','uphone','received','prize','unreceived','installerid']; 
  561. forvar i = 0 ; i < numFields.length ; i ++ ){ 
  562. $.util.onlyInputNumber( numFields[i] ); 
  563. })(); 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选