网站有时候需要这种联动然后获取到想对应的数据

思路:

这种的话就是你每次选择哪一个就将这个设置一个标注 表示你现在选择的是哪一个 然后每选择一次就进行一次ajax查询,ajax里面有一个data里面添加你现在的条件,获取到先对应的数据,
显示数据之前需要将对应显示数据的内容里面置空。
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
.school,.data{height:30px;line-height:30px;border-bottom:1px solid #ccc;}
label{font-size:18px;floaT:left;}
.con{floaT:left;font-size:16px;}
.con .active{color:red;}
.con span{display:block;padding:0px 5px;float:left;cursor:pointer;}
.con span:hover{color:red;}
.content{width:100%;height:250px;border:1px solid red;}
</style>
</head>
<body>
<div style="width:400px;border:1px solid #ccc;">
<div class="school">
<label>人物</label>
<div class="con">
<span class="active" data-mark="">开始选择</span>
<span data-mark="周杰伦">周杰伦</span>
<span data-mark="蔡依林">蔡依林</span>
<span data-mark="bigbang">bigbang</span>
<span data-mark="sj">sj</span>
</div>
</div>
<div class="data">
<label>页码</label>
<div class="con">
<span class="active">1</span>
<span>2</span>
<span>3</span>
<span>4</span>
<span>5</span>
</div>
</div>
<div class="content"></div>
</div>
<script src="js/jquery-1.7.2.js"></script>
<script>
$(function(){
var length=$(".con").length;
for(var i=0;i<length;i++){
(function(index){
$(".con").eq(index).find("span").click(function(){
$(".con").eq(index).find("span").removeClass("active");
$(this).addClass("active");
//条件
var json=select(); ajax(json.kw,json.pi);
});
})(i);
}
//获取到标志的条件
function select(){
var s;//内容
var n;//条件
var l=$(".data span").length;
for(var i=0;i<l;i++){
var c=$(".data span").eq(i).attr("class");
if(c=="active"){
n=$(".data span").eq(i).text();
}
}
var l=$(".school span").length;
for(var i=0;i<l;i++){
var c=$(".school span").eq(i).attr("class");
if(c=="active"){
s=$(".school span").eq(i).attr("data-mark");
}
} return {
kw:s,
pi:n
};
};
//ajax pi页码 pz页数
function ajax(s,n){
$.ajax({
url:'http://cgi.music.soso.com/fcgi-bin/fcg_search_xmldata.q?source=4&w='+s+'字&perpage='+n+'&ie=utf-8',
type:"GET",
async: false,
dataType:"jsonp",
success:function(data){ $(".content").empty();
for(var i=0;i<data.list.length;i++){
var result=data.list[i];
var odiv='<span style="font-size:18px;color:red">名字:'+result.albumname+'</span><span>流量'+result.interval+'</span></br>';
$(".content").append(odiv);
}
}
})
};
});
</script>
</body>
</html>
demo的地址:https://github.com/GainLoss/linkage-selection

联动选择通过ajax获取选择对应的数据的更多相关文章

  1. 使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析

    使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析 因为我在前台使用了jquery的text()方法,而不是html ...

  2. Ajax获取 Json文件提取数据

    摘自 Ajax获取 Json文件提取数据 1. json文件内容(item.json) [ { "name":"张国立", "sex":&q ...

  3. 3..jquery的ajax获取form表单数据

    jq是对dom进行的再次封装.是一个js库,极大简化了js使用 jquery库在js文件中,包含了所有jquery函数,引用:<script src="jquery-1.11.1.mi ...

  4. html基础:jquery的ajax获取form表单数据

    jq是对dom进行的再次封装.是一个js库,极大简化了js使用 jquery库在js文件中,包含了所有jquery函数,引用:<script src="jquery-1.11.1.mi ...

  5. jquery+ajax获取本地json对应数据

    首先,记得导入jquery.js文件. json内容: var obj123=[        {"option":"2,3,9,14,19,24,32",&q ...

  6. AJAX获取JSON形式的数据

    test.html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  7. 利用ajax获取网页表单数据,并存储到数据库之二(使用SSH)

    上篇介绍了如何使用JDBC链接ORACLE数据库实现对数据库的增删改查,本例是使用框架SSH来对数据库的数据进行操作. 首先说框架,现在流行的框架很多,如Struts.Hibernate.Spring ...

  8. 利用ajax获取网页表单数据,并存储到数据库之一(使用JDBC)

    所谓JDBC就是利用java与数据库相连接的技术,从数据库获取既有的信息或者把网页上的信息存储到数据库. 这里简单的介绍公司的一个小项目中的一部分,由于代码较多,所以用图片形式进行展示.源码请查看源码 ...

  9. 通过Jquery中Ajax获取json文件数据

    1. JSON(JavaScript Object Notation): javaScript对象表示法: 是存储和交换文本信息的语法,比xml更小,更快,更易解析. 2. JSON基本书写格式 : ...

随机推荐

  1. C++基础之数据类型和表达式

    面向对象特征1)封装 (类)2)继承(基类和派生类)3)多态(通过定义虚函数支持动态联编) 面向对象三要素(类-创建对象的样板,对象,继承) C++基本数据类型整型 int  (32位机,字宽4字节, ...

  2. OpenStack虚机状态变化图解

    对官网上内容的一个翻译,方便自己以后查找资料用 The following diagrams and tables show the required virtual machine (VM) sta ...

  3. 与"shark"相关的表达

    The word shark can be used to describe someone who is tricky and uses other people. Shark这个单词可以用来形容一 ...

  4. angular1 表单验证demo

    这是一个angular1 验证表单的小栗子: 先看代码: <div ng-controller="myController"> <form name=" ...

  5. 飘逸的python - @staticmethod和@classmethod的作用与区别

    一般来说,要使用某个类的方法,需要先实例化一个对象再调用方法. 而使用@staticmethod或@classmethod,就可以不需要实例化,直接类名.方法名()来调用. 这有利于组织代码,把某些应 ...

  6. 清北刷题冲刺 10-28 a.m

    立方数 (cubic) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK定义了一个数叫“立方数”,若一个数可以被写作是一个正整数的3次方,则这个数就是立方 ...

  7. Android进阶书籍推荐

    版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/124 Android进阶书籍推荐 端午节前我写了drake ...

  8. SpringBoot整合MyBatis之xml配置

    现在业界比较流行的数据操作层框架 MyBatis,下面就讲解下 Springboot 如何整合 MyBatis,这里使用的是xml配置SQL而不是用注解.主要是 SQL 和业务代码应该隔离,方便和 D ...

  9. ora2pg oracle迁移postgresql工具

    windows下安装 1. 安装strawberry-perl-5.24.3.1-64bit.msi 2. ora2pg-18.2.zip 解压缩cd 进入目录perl Makefile.PLdmak ...

  10. ELK系列(5) - Logstash怎么分割字符串并添加新的字段到Elasticsearch

    问题 有时候我们想要在Logstash里对收集到的日志等信息进行分割,并且将分割后的字符作为新的字符来index到Elasticsearch里.假定需求如下: Logstash收集到的日志字段mess ...