无刷新下拉框联动方法:

Controllers代码

public JsonResult DH_Change(string DH_ID)

{

List TeamLeaderList = FinanceDB.Get_TeamLeaderList(DH_ID);

return Json(TeamLeaderList);

}

public JsonResult TL_Change(string TL_ID)

{

List SalesList = FinanceDB.Get_SalesList(TL_ID);

return Json(SalesList);

}

后台获取并返回List

public List Get_TeamLeaderList(string DH_ID)

{

List list = new List();

list.Add(new SelectListItem { Value = "", Text = "All" });

string str = "SELECT distinct child_Staff_ID, child_name ";

str += "FROM VW_CASH_SLX_USER_TREE t inner join SYN_SLX_USERINFO u ";

str += "ON t.child_Staff_ID = u.cash_staff_id ";

str += "INNER JOIN dbo.SYN_SLX_USERSECURITY su on u.userid = su.userid ";

str += "where su.ISMANAGER = 'T' and ISNULL(child_staff_id, '') <> '' ";

if (string.IsNullOrEmpty(DH_ID))

{

str += "and t.Root_Staff_ID in (select parm_value from parm_tbl where parm_group = 'SALES_DEPT_HEADER') order by child_name";

}

else

{

str += "and t.Root_Staff_ID in ('" + DH_ID + "') order by child_name";

}

try

{

using (SqlConnection conn = new SqlConnection(connstr))

{

if (conn.State == ConnectionState.Closed)

{

conn.Open();

}

SqlCommand cmd = conn.CreateCommand();

cmd.CommandText = str;

cmd.CommandType = CommandType.Text;

SqlDataReader objDR = cmd.ExecuteReader();

while (objDR.Read())

{

string select_text = objDR["child_name"].ToString();

string select_value = objDR["child_Staff_ID"].ToString();

list.Add(new SelectListItem { Value = select_value, Text = select_text });

}

cmd.Dispose();

}

}

catch (Exception e)

{

throw e;

}

return list;

}

public List Get_SalesList(string TL_ID)

{

List list = new List();

list.Add(new SelectListItem { Value = "", Text = "All" });

string str = "SELECT distinct child_Staff_ID, child_name ";

str += "FROM VW_CASH_SLX_USER_TREE t ";

str += "where ISNULL(child_staff_id, '') <> '' and ";

str += "t.Root_Staff_ID in ( ";

if (string.IsNullOrEmpty(TL_ID))

{

str += "select parm_value from parm_tbl where parm_group = 'SALES_DEPT_HEADER' ) order by child_name ";

}

else

{

str += "'" + TL_ID + "') order by child_name";

}

try

{

using (SqlConnection conn = new SqlConnection(connstr))

{

if (conn.State == ConnectionState.Closed)

{

conn.Open();

}

SqlCommand cmd = conn.CreateCommand();

cmd.CommandText = str;

cmd.CommandType = CommandType.Text;

SqlDataReader objDR = cmd.ExecuteReader();

while (objDR.Read())

{

string select_text = objDR["child_name"].ToString();

string select_value = objDR["child_Staff_ID"].ToString();

list.Add(new SelectListItem { Value = select_value, Text = select_text });

}

cmd.Dispose();

}

}

catch (Exception e)

{

throw e;

}

return list;

}

Ajax 动态更新

// Report sales change.

function DH_onChange() {

var dh_id = $("#salesdephead_report").val();

$.ajax({

type: 'get',

url: '/Reports.mvc/DH_Change/',

data: { DH_ID: dh_id },

contentType: 'application/json;charset=uft-8',

dataType: 'json',

success: function(data) {

var selectlist =data;

$("#teamleader_report").empty();

for(i=0;i

{

$("#teamleader_report").append(""+data[i].Text+"");

}

},

error: function() {

alert("faile to request data");

}

});

TL_onChange(dh_id);

}

function TL_onChange(DH_ID) {

var tl_id;

if (DH_ID != null && DH_ID != "")

tl_id = $("#salesdephead_report").val();

else

tl_id = $("#teamleader_report").val();

$.ajax({

type: 'post',

url: '/Reports.mvc/TL_Change/',

data: { TL_ID: tl_id },

dataType: 'json',

success: function(data) {

var selectlist = data;

$("#requester_report").empty();

for (i = 0; i < selectlist.length; i++) {

$("#requester_report").append("" + data[i].Text + "");

}

},

error: function() {

alert("faile to request data");

}

})

}

//

前台HTML代码

Sales Department Head
销售部门审批人:

Team Leader
团队组长:

但是我们都知道,JQuery默认是异步执行的,所谓异步就是在ajax提交的过程当中,程序已经在执行下面的代码,两者是同时在进行的。有时候,我们却不希望ajax异步执行,而是想要等ajax返回数据后再作操作,那就需要做一点点的小改动。

Jquery的ajax还有async这么一个控制同步或者异步的属性。

再ajax中添加“ async:false, ”, 就会变成是同步执行了,也就是再ajax返回数据后才继续下面的代码。

其实除了修改属性async的方法外,还能通过传入一个函数解决问题。

以上,是今天所用到得一点知识,希望记录下有帮助到人啦。

MVC 下拉框联动效果&lpar;单选&rpar;

下拉框联动效果,我们以部门--职位为例,选择部门时,关联到该部门的职位.下拉框的写法就不多说了,详细请参照前文. 视图: 其中,dept是部门的属性,deptlist是部门下拉框的属性,job是职位的 ...

使用jquery Ajax异步刷新 下拉框

一个下拉框 产品类型:

jQuery Ajax实现下拉框无刷新联动

HTML代码: @{ Layout = null; } @using DAL; @using System.Data; @{ AreaDal areaDal = new AreaDal(); stri ...

【ASP&period;NET】 MVC下拉框联动

这个case主要是我在做项目的时候遇到一个需要根据input控件输入的内容,动态填充dropdown list中的内容, 实现二者联动的需求.在搜索了一些资源后,这篇博客解决了我的问题,所以记录并转载 ...

jquery 实现层级下拉框联动效果 代码

PHP请求页面

< ?php $file_contents = file_get_contents('http://www.ccvita.com/'); echo $file_contents; ?> 有 ...

面向对象(class0420)

测试 交换两个变量的值 int num1 = 5;int num2=6; 通过程序交换让num1 = 6,num2=5; 求两个数的最大值 (求三个数最大值) 求1-100之间所有奇数的和 找胖子,{ ...

Windows 中JDK安装配置教程

1.准备工作 a.因为Java JDK区分32位和64位系统,所以在安装之前必须先要判断以下我们的系统为多少位系统.右键计算机-属性查看,我安装的是64位 b.下载JDK,地址:http://www. ...

mysql sqlserver Oracle字符串连接

mysql 例mysql> select CONCAT('My', 'S', 'QL'); sqlserver select name+'aa' from student; oracle sel ...

BZOJ 3505&colon; &lbrack;Cqoi2014&rsqb;数三角形 &lbrack;组合计数&rsqb;

3505: [Cqoi2014]数三角形 给定一个nxm的网格,请计算三点都在格点上的三角形共有多少个. 注意三角形的三点不能共线. 1<=m,n<=1000 $n++ m++$ $ans ...

Android重绘ListView高度

Android重绘ListView高度 经常会有这样需求,需要ListView默认将所有的条目显示出来,这就需要外层使用ScrollView,ScrollView里面放置一个重绘高度的ListView ...

&lbrack;20190418&rsqb;exclusive latch spin count&period;txt

[20190418]exclusive latch spin count.txt--//昨天测试"process allocation" latch,主要这个latch与其它拴锁s ...

再谈javascriptjs原型与原型链及继承相关问题

什么是原型语言 只有对象,没有类;对象继承对象,而不是类继承类. “原型对象”是核心概念.原型对象是新对象的模板,它将自身的属性共享给新对象.一个对象不但可以享有自己创建时和运行时定义的属性,而且可以 ...

jquery ajax下拉联动,jQuery Ajax MVC 下拉框联动相关推荐

  1. php jq ajax 4个下拉框联动案列,Ajax与Jquery结合数据库做出实现下拉框的二级联动...

    这次给大家带来Ajax与Jquery结合数据库做出实现下拉框的二级联动,Ajax与Jquery结合数据库做出实现下拉框二级联动的注意事项有哪些,下面就是实战案例,一起来看一下. 首先我们需要先建立好数 ...

  2. 百度云 ajax jquery 三级联动,jQuery ajax实现省市县三级联动

    下面我们用Jquery,ajax,做一个省,市,县的三级联动: 下面是我做三级联动下拉的步骤以及逻辑 第一步:先做一个省市区表格 第二步:建个PHP页面显示用我是在 里放 用来接收要显示的省市区表格信 ...

  3. php jq ajax 4个下拉框联动案列,AJAX_AJAX实现下拉框联动,想当年,为了实现三级联动, - phpStudy...

    AJAX实现下拉框联动 想当年,为了实现三级联动,找个js高手些了N多代码才搞定,但是很慢,因为一次要将所有的选项取来,然后排序,查找动态显示. 现在使用AJAX真是太方便了,下面做了个简单例子,实现 ...

  4. html的样式下拉框的联动,Web框架Ajax实现html下拉框联动

    说明 页面代码 数据模型 Ajax联动 后台action 结语 说明 我们通过给两个下拉列表赋值案例来说明,下拉框1值通过属性值绑定AvailableCategories直接从后台获取,下拉框2值Se ...

  5. Ajax基础使用与jquery下使用ajax教程

    ajax是目前项目上使用 比较频繁的技术,非常的实用.本人目前做的项目中几乎都使用了ajax去后台请求数据.现在讲本人的学习笔记以及练习使用心得分享给大家,纯手打,大家多多支持.本分享为基础的ajax ...

  6. mvc jquery ajax分页实例,jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解,mvcpagerajax分页...

    jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解,mvcpagerajax分页 简单的两个步骤即可实现分页功能 //回调里面进行业务处理 function lo ...

  7. jsp ajax动态添加数据,jquery Ajax实现Select动态添加数据

    jquery Ajax实现Select动态添加数据,具体内容如下 1.背景 最近在工作中,遇到了一个关于select的问题.一般情况下,select下拉框中的数据都是固定的或者直接在jsp中读取列表值 ...

  8. $.ajax的async参数,jquery的$.ajax async使用详解

    async在jquery ajax中是一个同步参数了,我们下面来给大家介绍在jquery ajax中使用async时碰到的一些问题与方法介绍,希望例子能给各位同学带来一些帮助哦. async默认是tr ...

  9. jquery ajax json传递数组,jQuery ajax 传递JSON数组到Spring Controller

    jQuery ajax传递单个JSON对象到后台很容易,这里记录的是传递多个JSON对象组成的JSON数组到java 后台,并说明java如何解析JSON数组. 1.js代码 var relation ...

最新文章

  1. windows域中时间同步的解决方案
  2. Silverlight DataGrid超出列表高度时自动滚屏
  3. JavaScript知识点总结(二)
  4. 远程桌面连接时显示密码已过期
  5. keepalived主从模式监测nginx
  6. linux怎么用两个进程传值,linux下的C开发14,可执行程序如何传递参数?模拟shell执行命令...
  7. Qt Creator分析CPU使用率
  8. 512M内存编译php出错
  9. java ee项目部署到服务器上405,HTTP状态405 - HTTP POST方法不受此URL支持:采用的GlassFish服务器的NetBeans...
  10. 创建新DB和新用户DBeaver连接
  11. Centos7上卸载openJdk安装,安装自己的JDK1.8
  12. cglib动态代理jar包_Java中的原生动态代理和CGLIB动态代理的原理,我不信你全知道!...
  13. matlab函数isempty_MATLAB的Cell数组操作
  14. gxworks2使用指令手册_三菱编程软件 GX Works2 操作手册简单工程篇中文高清版
  15. 7.10 18级多校适应训练1题解
  16. 简单的学生成绩数据分析案例
  17. 国内B2C 26个经典购物网站商城收集
  18. 关于Realtek 8821ce wireless lan 802.11ac网络适配器无法使用
  19. 讲解后台管理系统之列表设计分享
  20. BitTorrent Tracker 搭建及使用

热门文章

  1. Kruskal算法构造最小生成树
  2. 电商运营-跨境开网店全图解
  3. 闪退怎么看logcat_iPhone手机点开软件就闪退如何解决?
  4. CVPR2020 | PV-RCNN: 3D目标检测 Waymo挑战赛+KITTI榜 单模态第一算法
  5. ECCV2020图像分割开源论文合集
  6. 项目实践 | 一文览尽人脸打卡全过程
  7. 非对称卷积增强CNN特征拟合
  8. Rosetta | Rosetta简介
  9. 第七课.简单的图像分类(一)
  10. python实现网络监控_使用python进行服务器监控