当前位置: 首页 > news >正文

标杆建设网站传奇备案域名购买

标杆建设网站,传奇备案域名购买,专做脚本的网站,wordpress后台修改需求#xff1a;商户下面有若干个门店#xff0c;每个门店都需要绑定上收款账户 方案一#xff1a;每个门店下面添加页面#xff0c;可以选择账户去绑定。#xff08;难度#xff1a;简单#xff09; 方案二#xff1a;从商户进入#xff0c;可以自由选择门店#…需求商户下面有若干个门店每个门店都需要绑定上收款账户 方案一每个门店下面添加页面可以选择账户去绑定。难度简单 方案二从商户进入可以自由选择门店以及账户动态绑定难度较复杂 页面 实现方式通过选择上面的门店打勾之后在选择账户里面的账户即可实现下面的列表的动态返回然后点击保存之后即可将门店和账户的绑定规则传到后台由后台统一处理 这里页面显示的字符串本来是可以由后台返回然后js动态拼接的但是考虑到js写逻辑过于复杂操作性不如PHP简易所以由后台PHP拼接字符串然后返回的拼接html代码直接显示 html代码 {extend namebase /} {block namecss} link relstylesheet href/public/admin/lib/layui/css/layui.css style .pic_set_list{width: 100px;display: inline-table;margin-right:10px} .pic_set_pic{width:100px;float:left} .pic_set_del{width:100px;float:left} /style {/block} {block namebody}div classlayui-fluiddiv classlayui-row stylemargin-top:10pxform classlayui-form form-containerinput typehidden nameshop_id idshop_id value{$shop_info[id]}div classlayui-form-itemlabel forL_px classlayui-form-label商户/labeldiv classlayui-input-inline stylecolor:red;margin-top: 10px;font-size:16px;{$shop_info[title]}/div/divdiv classlayui-form-item label classlayui-form-label请选择门店br!-- input typecheckbox lay-skinprimary lay-filterall nameall idall valueall title全选/反选 --/label{foreach namelist itemvo2}input typecheckbox lay-skinprimary classstore_check names_id value{$vo2.id} title{$vo2.title}{/foreach}/divbrbrdiv classlayui-form-itemlabel forL_title_english classlayui-form-label账户选择/labeldiv classlayui-input-inlineselect nameprovince_id lay-filteradapay idadapayoption value请选择账户/option{volist nameadapay idv}option value{$v[id]}{$v[name]}/option{/volist}/select/div/divdiv classlayui-form-itemlabel forL_title_english classlayui-form-label选择情况/labeldiv classlayui-input-inline idtable-data/div/divdiv classlayui-form-itemlabel forL_repass classlayui-form-label/labelbutton classlayui-btn typereset idclean清空/buttonbutton classlayui-btn typebutton idsubmit保存/button/div/form/div/div {/block} {block namejs} script typetext/javascript src/public/admin/js/admin.js/script script typetext/javascript src/public/admin/js/xcity.js/script !-- 配置文件 -- script typetext/javascript src/public/admin/ueditor/ueditor.config.js/script script typetext/javascript src/public/admin/ueditor/ueditor.all.js/script script typetext/javascript src/public/admin/ueditor/lang/zh-cn/zh-cn.js/script {/block}{block namescript} script//页面第一次进来时候,请求接口,返回已经有的信息$(document).ready(function(){var shop_id $(#shop_id).val();$.ajax({url:/admin/shop/return_data2,type:post,data:{shop_id:shop_id},dataType:json,success:function(data){document.getElementById(table-data).innerHTML data.data;}});//给特定的函数绑定上删除事件$(document).on(click, .delete_adapay, function() {event.preventDefault();var anchor $(this).closest(a);// 获取 a 标签的参数值var id anchor.attr(data_id);console.log(id)//获取门店id的多选框的值var obj document.getElementsByName(s_id);var checkList [];for(k in obj){if(obj[k].checked)checkList.push(obj[k].value);}//获取选择列表中的门店属性值var arr1 [];$(input[nametitle]).each(function(){arr1.push($(this).val());})// console.log(arr1);//获取选择列表中的账户属性值var arr2 [];$(input[nameadapay]).each(function(){arr2.push($(this).val());})// console.log(arr2);var arr3 [];$(input[nameids]).each(function(){arr3.push($(this).val());})// console.log(arr3);var adapay $(#adapay).val();//添加上ajax请求$.ajax({url:/admin/shop/association_del,type:post,data:{id:id,adapay:adapay,s_id:checkList,s_id_old:arr1,adapay_old:arr2,ids:arr3},dataType:json,success:function(data){document.getElementById(table-data).innerHTML data.data;}});});})layui.use(form, function(){var form layui.form;layui.form.on(select(adapay), function(data){//获取门店id的多选框的值var obj document.getElementsByName(s_id);var checkList [];for(k in obj){if(obj[k].checked)checkList.push(obj[k].value);}//获取选择列表中的门店属性值var arr1 [];$(input[nametitle]).each(function(){arr1.push($(this).val());})console.log(arr1);//获取选择列表中的账户属性值var arr2 [];$(input[nameadapay]).each(function(){arr2.push($(this).val());})console.log(arr2);var arr3 [];$(input[nameids]).each(function(){arr3.push($(this).val());})// console.log(arr3);var adapay $(#adapay).val();$.ajax({url:/admin/shop/return_data,type:post,data:{adapay:adapay,s_id:checkList,s_id_old:arr1,adapay_old:arr2,ids:arr3},dataType:json,success:function(data){document.getElementById(table-data).innerHTML data.data;}});})$(#clean).click(function(){var data ;document.getElementById(table-data).innerHTML data;})$(#submit).click(function(){var shop_id $(#shop_id).val();var arr1 [];$(input[nametitle]).each(function(){arr1.push($(this).val());})console.log(arr1);//获取选择列表中的账户属性值var arr2 [];$(input[nameadapay]).each(function(){arr2.push($(this).val());})console.log(arr2);var arr3 [];$(input[nameids]).each(function(){arr3.push($(this).val());})$.ajax({url:/admin/shop/associate_save,type:post,data:{shop_id:shop_id,s_id_old:arr1,adapay_old:arr2,ids:arr3},dataType:json,success:function(data){layer.msg(data.msg)window.reload();}});})}) /script {/block} 后端代码 public function return_data(){$request $this-request- param();// dump($request);die; //查询出所要拼接的字符串的项$s_ids $request[s_id];$where[id] array(in,$s_ids);$store Db::name(shop_store)-where($where)-select();$adapay Db::name(adapay_user)-where([id $request[adapay]])-find();$string1 div classlayui-card-body layui-table-body layui-table-maintable classlayui-tabletheadtrth门店/thth账户/thth操作/th/tr/theadtbody;$string3 /tbody/table/div;//对新旧字符串进行处理和分析//拼接字符串$string2 ;//第一次传值if(!isset($request[s_id_old]) !isset($request[adapay_old])){$id -1;foreach($store as $value){$string2 $string2 . trtdinput typehidden nameids value.$id. style display:noneinput typetext nametitle value.$value[id]. style display:none.$value[title]./input/tdtdinput typetext nameadapay value.$adapay[id]. style display:none.$adapay[name]./tdtda hrefjavascript:(0) classlayui-btn layui-btns ajax-delete delete_adapay data_id.$id. stylebackground: #e90d24;删除/a/td/tr;$id -- ;}//后续传值}else{//拼接旧的关联关系//如果是新的有,旧的没有的,就直接以新的为标准$new_list1[];$min min($request[ids]);//此时需要将原来的数据都拿过来,然后取最大的,在继续增加变化foreach($s_ids as $k $v){if (!in_array($s_ids[$k],$request[s_id_old])) {$min --;$new_list1[store_id] $s_ids[$k];$new_list1[adapay_id] $request[adapay];$new_list1[ids] $min;$new_list[] $new_list1;}}//如果两个都有,也就是有需要修改的,会以新的为准$new_list2 [];foreach ($s_ids as $key $value) {foreach ($request[s_id_old] as $key2 $value2) {if($s_ids[$key] $request[s_id_old][$key2]){$new_list2[store_id] $request[s_id_old][$key2];$new_list2[adapay_id] $request[adapay];$new_list2[ids] $request[ids][$key2];$new_list[] $new_list2;}}}$new_list3 [];//如果是新的没有,旧的有,就按照旧的为准foreach ($request[s_id_old] as $key $value) {if (!in_array($request[s_id_old][$key],$request[s_id])) {$new_list3[store_id] $request[s_id_old][$key];$new_list3[adapay_id] $request[adapay_old][$key];$new_list3[ids] $request[ids][$key];$new_list[] $new_list3;}}foreach ($new_list as $key $value) {$store_info Db::name(shop_store)-where([id$new_list[$key][store_id]])-find();$adapay_info Db::name(adapay_user)-where([id$new_list[$key][adapay_id]])-find();$id $new_list[$key][ids];$string2 $string2 . trtdinput typehidden nameids value.$id. style display:noneinput typetext nametitle value.$store_info[id]. style display:none.$store_info[title]./input/tdtdinput typetext nameadapay value.$adapay_info[id]. style display:none.$adapay_info[name]./tdtda href# classlayui-btn delete_adapay ajax-delete data_id.$id. stylebackground: #e90d24;删除/a/td/tr;}}$string $string1.$string2.$string3;$res[code] 200;$res[data] $string;$this-ajaxReturn($res);}//修改时候进去,返回已经修改好的情况public function return_data2(){ $request $this-request- param();$where[shop_id] $request[shop_id];$where[is_delete] 0;$list Db::name(shop_adapay_user)-where($where)-select();$string1 div classlayui-card-body layui-table-body layui-table-maintable classlayui-tabletheadtrth门店/thth账户/thth操作/th/tr/theadtbody;$string3 /tbody/table/div;$string2 ;foreach ($list as $key $value) {$store_info Db::name(shop_store)-where([id$list[$key][store_id]])-find();$adapay_info Db::name(adapay_user)-where([id$list[$key][member_id]])-find();$id $list[$key][id];$string2 $string2 . trtdinput typehidden nameids value.$id. style display:noneinput typetext nametitle value.$store_info[id]. style display:none.$store_info[title]./input/tdtdinput typetext nameadapay value.$adapay_info[id]. style display:none.$adapay_info[name]./tdtda href# classlayui-btn delete_adapay ajax-delete data_id.$id. stylebackground: #e90d24;删除/a/td/tr;}$string $string1.$string2.$string3;$res[code] 200;$res[data] $string;$this-ajaxReturn($res);}//保存门店和账户的关联情况public function associate_save(){$request $this-request- param();// dump($request);die;$s_id_old isset($request[s_id_old])?$request[s_id_old]:[];$adapay_old isset($request[adapay_old])?$request[adapay_old]:[];$num count($s_id_old);for ($i0; $i $num; $i) { $value[shop_id] $shop_id;$value[store_id] $s_id_old[$i];$value[member_id] $adapay_old[$i];//查询出关联的银行卡id$where_bank[member_id] $adapay_old[$i];$where_bank[is_default] 1;$bank_info Db::name(shop_account)-where($where_bank)-find();if(empty($bank_info)){$this-error(请先添加账户对应银行卡!);}$value[account_id] $bank_info[id];$where[shop_id] $shop_id;$where[store_id] $s_id_old[$i];$where[is_delete] 0;//先查询是否有了,有了就修改,没有在插入$is_have Db::name(shop_adapay_user)-where($where)-find();if (empty($is_have)) {$res Db::name(shop_adapay_user)-insertGetId($value);}else{//判断其他字段是否相等,相等就跳过,不相等就去修改if($is_have[member_id] ! $value[member_id] || $is_have[account_id] ! $value[account_id]){$res Db::name(shop_adapay_user)-where([id$is_have[id]])-update($value);}else{$res true;}}}//添加判断,如果是传过来的值没有,但是数据库有,那就删除,修改is_delete为1$where_is[is_delete] 0;$where_is[shop_id] $request[shop_id];$list Db::name(shop_adapay_user)-where($where_is)-select();foreach ($list as $key $value) {if(!in_array($list[$key][store_id],$request[s_id_old])){$res2 Db::name(shop_adapay_user)-where([id$list[$key][id]])-update([is_delete1]);}}if($res){$this-success(操作成功!);}else{$this-error(操作失败!);}}//删除功能public function association_del(){$request $this-request- param();$id_jian $request[id];// dump($request);die; //查询出所要拼接的字符串的项$s_ids isset($request[s_id])?$request[s_id]:[];$where[id] array(in,$s_ids);$store Db::name(shop_store)-where($where)-select();$adapay Db::name(adapay_user)-where([id $request[adapay]])-find();$string1 div classlayui-card-body layui-table-body layui-table-maintable classlayui-tabletheadtrth门店/thth账户/thth操作/th/tr/theadtbody;$string3 /tbody/table/div;//对新旧字符串进行处理和分析//拼接字符串$string2 ;//第一次传值if(!isset($request[s_id_old]) !isset($request[adapay_old])){$id -1;foreach($store as $value){$string2 $string2 . trtdinput typehidden nameids value.$id. style display:noneinput typetext nametitle value.$value[id]. style display:none.$value[title]./input/tdtdinput typetext nameadapay value.$adapay[id]. style display:none.$adapay[name]./tdtda hrefjavascript:(0) classlayui-btn layui-btns ajax-delete delete_adapay data_id.$id. stylebackground: #e90d24;删除/a/td/tr;$id -- ;}//后续传值}else{//拼接旧的关联关系//如果是新的有,旧的没有的,就直接以新的为标准$new_list1[];//如果两个都有,也就是有需要修改的,会以新的为准$new_list2 [];foreach ($s_ids as $key $value) {foreach ($request[s_id_old] as $key2 $value2) {if($s_ids[$key] $request[s_id_old][$key2]){$new_list2[store_id] $request[s_id_old][$key2];$new_list2[adapay_id] $request[adapay];$new_list2[ids] $request[ids][$key2];$new_list[] $new_list2;}}}$new_list3 [];//如果是新的没有,旧的有,就按照旧的为准foreach ($request[s_id_old] as $key $value) {if (!in_array($request[s_id_old][$key],$s_ids)) {$new_list3[store_id] $request[s_id_old][$key];$new_list3[adapay_id] $request[adapay_old][$key];$new_list3[ids] $request[ids][$key];$new_list[] $new_list3;}}foreach ($new_list as $key $value) {$store_info Db::name(shop_store)-where([id$new_list[$key][store_id]])-find();$adapay_info Db::name(adapay_user)-where([id$new_list[$key][adapay_id]])-find();$id $new_list[$key][ids];if($id ! $id_jian){$string2 $string2 . trtdinput typehidden nameids value.$id. style display:noneinput typetext nametitle value.$store_info[id]. style display:none.$store_info[title]./input/tdtdinput typetext nameadapay value.$adapay_info[id]. style display:none.$adapay_info[name]./tdtda href# classlayui-btn delete_adapay ajax-delete data_id.$id. stylebackground: #e90d24;删除/a/td/tr;}}}$string $string1.$string2.$string3;$res[code] 200;$res[data] $string;$this-ajaxReturn($res);} 关联表的数据表结构 可能有其他的办法我这个也或许不是最优解因为本该前端处理的dom数据由PHP处理返回了 另外如果是前端直接写在页面上的HTML代码一些onclick等事件可以直接绑定进行监听操作但是如果是由拼接上的字符串动态显示的类似于富文本内容则需要加上限定 需要把代码都放在$(document)的后面才能执行不能直接写js代码 $(document).on(click, .delete_adapay, function() {//内容 }
http://www.w-s-a.com/news/78058/

相关文章:

  • 鄂州官方网站食品网站建设需求分析
  • 福州网站建设金森要做好网络营销首先要
  • 中山哪里有好网站建设公司企业培训考试平台下载
  • 域名备案查询 网站备案查询企业网站建设问题研究
  • wordpress无法编辑北京优化网站方法
  • 公司建设一个网站最好的网站建设哪家好
  • 南京市住宅建设总公司网站wordpress 自己写的网页
  • 淄博网站制作企业高端长沙企业网站制作服务报价
  • 网站服务理念中外商贸网站建设
  • 如何自己建立网站中国建设银行网站忘记密码
  • 什么是a站如何在12366网站上做实名认证
  • 斗蟋蟀网站建设谭谭心怎么建设网站
  • 优秀网站开发商郑州网站建设套餐
  • 做伤残鉴约号网站购物网站建设新闻
  • 黄江网站建设公司自己房子做民宿挂什么网站
  • 手游网站做cpc还是cpm广告号宣武郑州阳网站建设
  • vs连接数据库做网站建立网站
  • 电商网站设计图片素材p2p网站建设石家庄
  • 莲塘网站建设如何文字推广一个婚恋网站
  • 医院网站建设工作汇报WordPress不发邮件了
  • 怎么做外语网站个人网页设计作品ps
  • 网站原型怎么做vps如何建两个网站
  • 商城网站建设源码嘉兴seo计费管理
  • 城乡建设网站证件查询系统wordpress 时间代码
  • php网站建设 关键技术做网站哪家正规
  • 网站开发用什么写得比较好谷歌的英文网站
  • 青岛网站建设公司在哪vivo手机商城
  • 兼职刷客在哪个网站做哪个网站做淘宝客
  • 眼科医院网站开发网络营销特点是什么
  • 提交网站给百度增加wordpress插件