<!-- 前端代码部分-->
<div class="pop-movegroup" id="salesmanBox">
<dl>
<dt>选择推广账号:</dt>
<dd> <!-- 一级联动的数据先查询遍历出来-->
<select name="salesman" id="salesman">
<volist name="salesman" id="vo">
<option value="{$vo.id}">{$vo.uname}</option>
</volist>
</select> <!-- 二级联动-->
<select name="lib" id="libs"> </select>
</dd>
<dd class="center">
<input type="hidden" id='uid' value="{$_GET['uid']|intval}">
<input type="button" class="btn_b mr10" value="确认" onclick="admin.domoveSalesUser()">
<input type="button" class="btn_w" value="取消" onclick="ui.box.close()">
</dd>
</dl>
</div>

js部分:

 <script type="text/javascript">
//点击一级联动里面的选项 获取id 然后去查询对应的数据
$("#salesman").change(function(){
//获取id
var catid=$("#salesman").val();
//将id提交到后台
$.post("{:U('admin/User/doAddSalesUsers')}","id="+catid,function(data){
//清空二级联动
$("#libs").empty();
//console.log(data); var count = data.data.length;
var i = 0;
var b="";
//根据后端所返回的数据 去展示对应的数据
for(i=0;i<count;i++){
b+="<option value='"+data.data[i].uid+"'>"+data.data[i].uname+"</option>";
}
$("#libs").append(b);
});
}); //点击二级菜单里面的数据
admin.domoveSalesUser = function(){
//获取id
var id = $('#libs').val(); if(!id){
ui.error( '没有选中推广账户' );return false;
}
//开始进行绑定
var uid = $('#uid').val();
$.post(U('admin/User/doAddSalesUser'),{uid:uid,sid:id},function(msg){
ajaxReload(msg);
//location.href = U('admin/User/index');
},'json');
};
</script>

后端代码部分:

public function doAddSalesUsers()
{
$id = $_POST['id'];
$data = model("SalesmanEntity")->where("sid = " . $id)->select();
$this->ajaxReturn($data, "JSON");
} public function doAddSalesUser()
{
$return = array('status' => '0', 'data' => '绑定推广账号失败');
$uid = !empty($_POST['uid'])? intval($_POST['uid']) : 0; //yonghuid
// var_dump($uid);
$sid = !empty($_POST['sid'])? intval($_POST['sid']) : 0; //suoshuzuid
//var_dump($sid);
// var_dump($dataArray);
if(empty($uid) || empty($sid)){
$return['data'] = "数据无效!";
exit(json_encode($return));
} //去salesman_entity表中去查询该女性id所属用户组
$dataArray = M('salesman_entity')->where("uid=". $_POST['sid'])->field("sid")->select();
//var_dump($dataArray);
$idss = array_column($dataArray,'sid');
//invite_id
$yqId = $idss[0];
//女性用户id $user = model('User')->where('uid='.$uid)->find();
if($user['invite_id']>0){
$this->error("该用户已被绑定!");
}
$datas = array('invite_id'=>$yqId,'sid'=>$sid);
//开始绑定
if(model('User')->where('uid='.$uid)->setField('invite_id',$yqId) && model('User')->where('uid='.$uid)->setField('sid',$sid)){
$return = array('status' => 1, 'data' => '用户绑定成功');
}
exit(json_encode($return));
}

Thinkphp 两级联动的更多相关文章

  1. ajax实现无刷新两级联动DropDownList

    ajax实现的无刷新三级联动 http://zhangyu028.cnblogs.com/articles/310568.html 本文来自小山blog:http://singlepine.cnblo ...

  2. JS练习:两级联动

    代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title ...

  3. Combobox下拉框两级联动

    下拉框的两级联动是我们开发中经常遇到一种情况.比如一个学生管理系统中,根据年级.科目及姓名查询学生考试成绩,年级和科目都是硬盘中的有限数据(数据库)而学生则可以有用户手动指定,这时在数据库中有年级和科 ...

  4. Jquery实现两级联动

    最后结果如下: 关键代码如下: <select name="customerCondition['credibilityBegin']" id="credibili ...

  5. ajax_get/post_两级联动

    使用ajax实现菜单联动 通常情况下,GET请求用于从服务器上获取数据,POST请求用于向服务器发送数据. 需求:选择第一个下拉框的值,根据第一个下拉框的值显示第二个下拉框的值 首先使用GET方式. ...

  6. ASP_NET实现界面无刷新的DropdownList两级联动效果

    所谓DropdownList联动,也就是在选一个DropdownList的时候使另外一个DropdownList的内容更新(如选省份时显示所属城市),按常规的方法那就是在第一个DropdownList ...

  7. JQuery EasyUI combobox 省市两级联动

    表名:province  结构如下 CallIn.tpl 模板页 <select id="consult_province" name="consult_provi ...

  8. JS 省市两级联动(不带地区版本)

    基于网上找的一个版本改造,因为项目需求不需要地区只要省.市,所以做了改版,两个input上直接取出了数据 <html> <head> <script src=" ...

  9. 踩iviewui中Select 选择器两级联动,重置查询条件时第二级数据无法清除的坑

    小颖公司最近做的项目用的vue+iviewui+axios,在做项目的过程中,遇到一个问题: 二级联动的下拉框,第一个下拉框一直都有值,第二个下拉框是在选择了第一个下拉框之后采取调用ajax获取其值, ...

随机推荐

  1. 【C/C++开发】C++实现简单的线程池

    C++实现简单的线程池 线程池编程简介: 在我们的服务端的程序中运用了大量关于池的概念,线程池.连接池.内存池.对象池等等.使用池的概念后可以高效利用服务器端的资源,比如没有大量的线程在系统中进行上下 ...

  2. 【VS开发】fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本

    fatal error C1853: "Debug\sift.pch"预编译头文件来自编译器的早期版本 <pre id="best-content-12991040 ...

  3. 移动架构-MVVM框架

    MVVM是Model-View-ViewModel的简写.它本质上就是MVC 的改进版.MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开 MVVM的优点 可重用性 ...

  4. c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - prepare to find start position just show master status

    2018-12-27 08:39:49.808 [destination = example , address = /127.0.0.1:3308 , EventParser] WARN c.a.o ...

  5. 图解JS

    弱语言 数据类型 隐式转换 弱等于 严格等于 包装对象 字符串转为包装对象 类型检测 表达式 运算符 块 try...catch 对象结构 创建对象,原型链 属性读写 getter,setter 序列 ...

  6. NotePad++ 正则表达式 转

    https://gerardnico.com/ide/notepad/replace https://notepad-plus-plus.org/community/topic/16787/find- ...

  7. 用css美化select框

    先上代码: .selectData{ height: 0.42rem; position: absolute; right:.28rem; top:.30rem; //去边框 border: none ...

  8. 四、poll()、select()和epoll()

    在用户程序中,poll()和select()系统调用用于对设备进行无阻塞访问.poll()和select()最终会调用设备驱动中的poll()函数,在我所使用的Linux内核中,还有扩展的poll() ...

  9. spring cloud微服务实践三

    上篇文章里我们实现了spring cloud中的服务提供者和使用者.接下来我们就来看看spring cloud中微服务的其他组件. 注:这一个系列的开发环境版本为 java1.8, spring bo ...

  10. 一个无法解析的外部命令and无法解析的外部符号

    出现错误: 解决: 因为修改了函数定义的参数,但是没有修改函数声明的参数 把参数统一一下就行了