使用jquery Ajax异步刷新 下拉框
一个下拉框
<label>产品类型:</label>
<select id="protype" name="protype" onchange="getNameList()">
<option value="">--请选择--</option>
</select>
响应上一个下拉框的结果
的另一个下拉框
<label>产品名称:</label>
<select id="proname" name="proname">
<option value="">--请选择--</option>
</select>
引入jquery包
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
异步刷新代码
function getNameList() {
var id = $('#protype').val();
if (id === "") {
$('#proname').html('');
var options = '';
options += '<option value="">--请选择--</option>';
$('#proname').append(options);
return;
}
var obj = { id: id };
AjaxCall('/Home/GetProList', JSON.stringify(obj), 'POST').done(function (response) {
if (response.length > 0) {
$('#proname').html('');
var options = '';
options += '<option value="">--请选择--</option>';
for (var i = 0; i < response.length; i++) {
options += '<option value="' + response[i].Value + '">' + response[i].Text + '</option>';
}
$('#proname').append(options); }
}).fail(function (error) {
$('#proname').html('');
var options = '';
options += '<option value="">--请选择--</option>';
$('#proname').append(options);
});
}
function AjaxCall(url, data, type) {
return $.ajax({
url: url,
type: type ? type : 'GET',
data: data,
contentType: 'application/json'
});
后台响应代码
/// <summary>
/// 用于处理异步刷新下拉框
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpPost]
public ActionResult GetProList(string id)
{
List<SelectListItem> elems = null;
if (string.IsNullOrEmpty(id))
elems = null;
else
{
string filePath = Server.MapPath("/App_Data/SimpleData.xml");
string filter = string.Format("/DD/DItems[@DValue='{0}']", id);
elems = GetListByXpath(filePath, filter);
}
return Json(elems, JsonRequestBehavior.AllowGet);
}
总结 :
重点在于使用ajax异步post成功之后,处理服务器返回来的数据
使用jquery Ajax异步刷新 下拉框的更多相关文章
- jQuery Ajax MVC 下拉框联动
无刷新下拉框联动方法: Controllers代码 public JsonResult DH_Change(string DH_ID) { List<SelectListItem> Tea ...
- jQuery Ajax实现下拉框无刷新联动
HTML代码: @{ Layout = null; } @using DAL; @using System.Data; @{ AreaDal areaDal = new AreaDal(); stri ...
- jQuery之双下拉框
双下拉框要实现的效果,实际上就是左边下拉选择框里的内容,可以添加到右边,而右边同理.写了个简单的例子,来说明一下. 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- jquery操作select下拉框的各种方法,获取选中项的值或文本,根据指定的值或文本选中select的option项等
简介jquery里对select进行各种操作的方法,如联动.取值.根据值或文本来选中指定的select下拉框指定的option选项,读取select选中项的值和文本等. 这一章,站长总结一下jquer ...
- jQuery操作select下拉框的text值和value值的方法
1.jquery获取当前选中select的text值 $("#select1").find("option:selected").text(); 2.jquer ...
- js&jquery 获取select下拉框的值、文本内容、自定义属性
js&jquery 获取select下拉框的值.文本内容.自定义属性 CreationTime--2018年7月2日09点22分 Author:Marydon html <selec ...
- JQuery操作select下拉框
JQuery操作select下拉框 获取Select选择的Text和Value $("#select_id").change(function(){//code...}); //为 ...
- SSM框架,在Html界面利用ajax,json,jQuery实现省市区下拉框联动
1.先生成省市区表格 2.建立实体类 3.在html画出下拉框 <select id="province"> <option value="" ...
- jQuery无限级联下拉框插件
自己编写jQuery插件 之 无限级联下拉框 因为是级联,所以数据必须是树型结构的,我这里的测试数据如下: 看下效果图: 1.>图一: 2.>图二: 3.>图三: 由图可知,下拉 ...
随机推荐
- OKVIS框架之前端
1. 数据流入 在okvis_app_sychronous.cpp内,把IMU和图像数据加入到各自的队列里.由ThreadedKFVio负责队列的各种操作.作者对队列加了特殊功能,保证队列是线程安全的 ...
- c# 自定义控件之 ComboBox
winform 自带的 combobox 无法支持根据输入文本匹配列表中的项目,需要使用自定义控件. public class MyCombobox : ComboBox { //初始化数据项 pri ...
- java 线程安全并发Queue
并发Queue 在并发的队列上jdk提供了两套实现,一个是以ConcurrentLinkedQueue为代表的高性能队列,一个是以BlockingQueue接口为代表的阻塞队列,无论在那种都继承自Qu ...
- dotNET面试(三)
1.简述 private. protected. public. internal 修饰符的访问权限.private : 私有成员, 在类的内部才可以访问 ,也就是类内部的函数等成员可以访问.prot ...
- Ubuntu中安装jenkins+docker,实现项目部署
本人对于linux系统是个小白,恰逢公司新框架需要docker+jenkins部署项目,所以通过同事口述+一顿乱查,终于实现在虚拟机上搭建的ubuntu系统中 实现jenkins +docker 自动 ...
- linux文件管理--压缩打包
目录 linux文件管理--压缩打包 1.压缩打包介绍 2.gzip压缩工具 3.zip压缩工具 注意: 4.tar压缩工具 5.tar生产案例实践 linux文件管理--压缩打包 1.压缩打包介绍 ...
- android中返回数据给上一个活动,可以用来回显数据
(一)who简介:没错,就是startActivityForResult()方法,这个方法用来在活动被销毁的时候返回数据给上一个方法.参数说明: startActivityForResult(inte ...
- java23种设计模式(一)-- 工厂模式、抽象工厂模式和单例模式
一.工厂模式 1.定义统一的接口,并在接口中定义要实现的抽象方法. 2.创建接口的具体实现类,并实现抽象方法. 3.创建一个工厂类,根据传递的参数,生成具体的实现类对象,执行具体的方法. 优点: 1. ...
- Python3.5-20190513-廖老师-自我笔记-函数式编程
把复杂的任务拆成各个小的函数,通过函数的调用来完成任务.这就是面向过程编程. 高阶函数:就是让函数的参数能够接收别的函数.把函数作为参数传入到另一个函数. 函数名也是变量.和变量用法一样的,指向一个函 ...
- jsp中$使用不了
导入了jstl <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>为啥 ...