mode_demo.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. //1、当页面加载完成会调用函数 initbodys(),里面可以写初始信息,绑定事件等。
  2. function initbodys(){
  3. //绑定触发时间
  4. c.onselectdata['custname']=function(d){
  5. //js.getarr(d);//选择了打印一下,去试试
  6. form('explain').value=d.subname;//读取到的写入到一个文本框里。
  7. //要去加上客户的所在地址就用ajax,geturlact是一个方法,参数写方法名getcustinfo,这个方法是在录入模块控制器文件里的方法。
  8. js.ajax(geturlact('getcustinfo'),{custid:d.id},function(ret){
  9. form('sheng').value=ret.sheng;
  10. form('shi').value=ret.shi;
  11. //也可以写更多字段
  12. //调试js错误,
  13. //form('abcdd').value=ret.sheng;//这句是错的,没有abcdd字段。
  14. },'get,json');
  15. }
  16. //当元素类型是[弹框下拉选择]时
  17. c.onselectdata['tanxuan']=function(d){
  18. console.log(d);
  19. js.msg('success','选中的数据:'+JSON.stringify(d)+'');
  20. }
  21. c.onselectdatabefore=function(fid,zb){
  22. if(fid=='tanxuancheck'){
  23. if(form('tanxuan').value=='')return '请先选择弹出下拉单选';
  24. }
  25. return {'tanxuanid':form('tanxuanid').value};//返回参数让第二个可以过滤
  26. }
  27. //弹出多选触发
  28. c.onselectdata['tanxuancheck']=function(d){
  29. console.log(d);
  30. js.msg('success','选中的数据:'+JSON.stringify(d)+'');
  31. }
  32. //绑定省用来联动
  33. $(form('sheng')).change(function(){
  34. form('shi').length=1;//清空市下拉框的数据
  35. form('xian').length=1;//清空县下拉框的数据
  36. var val = this.value;
  37. if(val=='')return;
  38. //ajax获取对应城市数据,在webmain/flow/input/mode_demoAction.php 下方法getcityAjax 查找数据库返回
  39. js.ajax(geturlact('getcity'),{'sheng':val},function(ret){
  40. //得到数据填充到下拉框
  41. js.msg('success','城市数据:'+JSON.stringify(ret)+'');
  42. js.setselectdata(form('shi'),ret,'name');
  43. },'post,json');
  44. });
  45. //绑定市用来联动
  46. $(form('shi')).change(function(){
  47. form('xian').length=1;//清空县下拉框的数据
  48. var val = this.value;
  49. if(val=='')return;
  50. //ajax获取对应县数据,在webmain/flow/input/mode_demoAction.php 下方法getxianAjax 查找数据库返回
  51. js.ajax(geturlact('getxian'),{'city':val},function(ret){
  52. //得到数据填充到下拉框
  53. js.msg('success','县(区)数据:'+JSON.stringify(ret)+'');
  54. js.setselectdata(form('xian'),ret,'name');
  55. },'post,json');
  56. });
  57. }
  58. /**
  59. * 常用的方法
  60. * 1、geturlact('abcfangfa');参数方法名 获取访问url,访问方法写在webmain/flow/input/mode_模块编号Action.php 下 abcfangfaAjax方法
  61. */
  62. //2、异步加载数据,demo
  63. function changedata(){
  64. var gtype = 'get'; //为时get请求得到数据字符串,为:get,json返回josn对象
  65. js.ajax(geturlact('initdatas'),{'参数1':'参数值'},function(ret){
  66. alert(ret);
  67. //赋值
  68. },gtype);
  69. }
  70. //3、提交保存时触发事件,常用于判断数据是否完整性
  71. function changesubmit(d){
  72. //if(!d.name)return '名称不能为空';
  73. };
  74. //4、保存提交成功触发
  75. function savesuccess(){
  76. alert('保存成功,我在页面上自己写的');
  77. };
  78. //下拉框联动例子
  79. function liandong(){
  80. js.ajax(geturlact('initdatas'),{'参数1':'参数值'},function(ret){
  81. //返回ret数据是个json数组,格式[{name:'',value:''},{...}]
  82. var o = form('下拉框名称');
  83. o.length = 1;
  84. js.setselectdata(o,ret,'value'); //给下拉框设置数据源
  85. },'get,json');
  86. }