使用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.>图三: 由图可知,下拉 ...
随机推荐
- oracle中Varchar2和nvarchar2的区别
在oracle 11g下测试了下varchar2与nvarchar2这两种类型,网上有很多关于这两种类型的区别的帖子,我还是自己测试了下. varchar2(size type),size最大为400 ...
- 【记录】elasticsearch 注解
先记录地址,之后再整理 参考地址:https://blog.csdn.net/qq_28364999/article/details/81109666 https://blog.csdn.net/dy ...
- PHP 接口签名验证
目录 概览 常用验证 单向散列加密 对称加密 非对称加密 密钥安全管理 接口调试工具 在线接口文档 扩展 小结 概览 工作中,我们时刻都会和接口打交道,有的是调取他人的接口,有的是为他人提供接口,在这 ...
- windows下基于(QPC)实现的微秒级延时
1.为什么会写windows下微秒级延时 在上一篇 实现memcpy()函数及过程总结 中测试memcpy的效率中,测试时间的拷贝效率在微秒级别,需要使用微秒级时间间隔计数. windows下提供Qu ...
- 力扣—Remove Nth Node From End of List(删除链表的倒数第N个节点) python实现
题目描述: 中文: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二 ...
- zabbix自带database monitor
1. 在zabbix服务器上安装一下两个包: # yum -y install unixODBC mysql-connector-odbc 2. 修改zabbix服务器上ODBC配置: 2.1 Vim ...
- centos 升级python
1.下载python3.6.1的包 wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz 2.解压 tar -zxvf Pytho ...
- Qt 【widget如何铺满窗口】
刚接触qt不是很长时间,都是使用ui拖拽控件实现界面,然后发现有些问题就是控件一旦多了起来,拖拽就不好控制了,然后就转而使用纯代码开发. 一下是碰到第一个问题: 创建一个MainWidget; Mai ...
- Python+Unittest+Requests+PyMysql+HTMLReport 多线程并发接口化框架
整体框架使用的是:Python+Unittest+Requests+PyMysql+HTMLReport 多线程并发模式 主要依赖模块 Unittest.Requests.PyMysql.HTMLRe ...
- 在 IntelliJ IDEA 中这样使用 Git,效率提升2倍以上
1.Git简介 Git是目前流行的分布式版本管理系统.它拥有两套版本库,本地库和远程库,在不进行合并和删除之类的操作时这两套版本库互不影响.也因此其近乎所有的操作都是本地执行,所以在断网的情况下任然可 ...