首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基于HTML中的两个下拉选择动态显示JSON数据的Javascript

基于HTML中的两个下拉选择动态显示JSON数据的JavaScript可以通过以下步骤来实现:

  1. 创建HTML页面,包括两个下拉选择框和一个用于显示JSON数据的容器。
代码语言:txt
复制
<!DOCTYPE html>
<html>
<head>
    <title>动态显示JSON数据</title>
</head>
<body>
    <label for="category">选择分类:</label>
    <select id="category" onchange="loadData()">
        <option value="">请选择</option>
        <option value="1">分类1</option>
        <option value="2">分类2</option>
    </select>

    <br>

    <label for="item">选择项目:</label>
    <select id="item" onchange="displayData()"></select>

    <br>

    <div id="dataContainer"></div>

    <script src="script.js"></script>
</body>
</html>
  1. 创建JavaScript文件script.js,用于处理下拉选择框的改变事件和动态显示JSON数据。
代码语言:txt
复制
function loadData() {
    var category = document.getElementById("category").value;

    // 发送请求获取对应分类的JSON数据
    // 可以使用XMLHttpRequest或者fetch等方式发送异步请求

    // 假设从服务器获取的JSON数据如下:
    var data = {
        "1": [
            {
                "id": "1",
                "name": "项目1"
            },
            {
                "id": "2",
                "name": "项目2"
            }
        ],
        "2": [
            {
                "id": "3",
                "name": "项目3"
            },
            {
                "id": "4",
                "name": "项目4"
            }
        ]
    };

    var itemSelect = document.getElementById("item");
    itemSelect.innerHTML = ""; // 清空原有选项

    if (category) {
        var items = data[category];
        for (var i = 0; i < items.length; i++) {
            var option = document.createElement("option");
            option.value = items[i].id;
            option.text = items[i].name;
            itemSelect.appendChild(option);
        }
    }
}

function displayData() {
    var category = document.getElementById("category").value;
    var itemId = document.getElementById("item").value;

    // 根据选择的分类和项目,从服务器获取对应的JSON数据
    // 可以使用XMLHttpRequest或者fetch等方式发送异步请求

    // 假设从服务器获取的JSON数据如下:
    var data = {
        "1": [
            {
                "id": "1",
                "name": "项目1",
                "description": "项目1的描述"
            },
            {
                "id": "2",
                "name": "项目2",
                "description": "项目2的描述"
            }
        ],
        "2": [
            {
                "id": "3",
                "name": "项目3",
                "description": "项目3的描述"
            },
            {
                "id": "4",
                "name": "项目4",
                "description": "项目4的描述"
            }
        ]
    };

    var dataContainer = document.getElementById("dataContainer");
    dataContainer.innerHTML = ""; // 清空原有数据

    if (category && itemId) {
        var items = data[category];
        for (var i = 0; i < items.length; i++) {
            if (items[i].id === itemId) {
                var jsonData = JSON.stringify(items[i], null, 2);
                dataContainer.innerText = jsonData;
                break;
            }
        }
    }
}

window.onload = function() {
    loadData();
};
  1. 在加载完页面时触发loadData()函数,根据选择的分类加载对应的项目选项。
  2. 在选择项目改变时触发displayData()函数,根据选择的分类和项目显示对应的JSON数据。
  3. 根据实际情况,可以通过异步请求从服务器获取JSON数据,并在相应位置进行处理。

这个实例中,我们使用了两个下拉选择框,第一个选择框用于选择分类,第二个选择框根据选择的分类动态加载对应的项目选项。当选择了项目后,会根据选择的分类和项目从服务器获取对应的JSON数据,并在页面中显示出来。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

基于ThinkPHPApp(通信)接口开发封装JSON数据 并读取JSON数据封装

PHP 是世界上最好语言。 在为 App 开发接口过程,我们必不可少要为Android和 iOS 工程师们提供返回数据,如何灵活快速又易懂返回他们需要数据是非常关键。... = $this->api_rule($data,'数据查询成功');      echo $json; } PHP 开发手机 API 时,一般返回 XML 或 JSON 数据类型数据,除了要返回从源数据...(程序本身需要数据)外还应附上状态码,以下是一段封装后数据,它使用 JSON 格式展现: /** * php 编写 app 接口函数封装 * * @param...数据 pc 访问直接 p 出来 return json_encode($all_data); exit(0); } 沈唁志|一个PHPer成长之路!...原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:基于ThinkPHPApp(通信)接口开发封装JSON数据 并读取JSON数据封装

3.7K20
  • Django 后台带有字典列表数据与页面js交互实例

    (2)、后面在把字典值通过json.dumps转换为json格式,这样才能给html页面的js进行交互,而且如果有中文的话,需要在后面加个ensure_ascii=False参数,不然的话js得到数据不是我们想得到数据...(3)、最后,再把转成json字典数据添加进列表data,最后通过content[‘detail’]=data把这个列表传到页面上,供js调用。...(detail_data, ensure_ascii=False)) content['detail'] = data 2、接下来看下html如何处理上面传过detail数据,其中课程用下拉框依次显示...代码解析一下: (1)、其中获取下拉选择课程值,赋给一个变量course,接着把传过来界面的detail,赋给一个变量details,注意这里必须要用{{ detail|safe }},不然取出来数据会不是想要...(3)、通过页面下拉选择课程值,跟取到每个课程分数做比较,相等的话,就取出对应课程分数,填充进页面。 3、Django和js交互网上例子太少,这里积累一下,以上内容仅供学习参考,谢谢!

    2.5K10

    AJAX入门这一篇就够了

    什么是Ajax Ajax(Asynchronous JavaScript and XML) 异步JavaScript和XML Ajax实际上是下面这几种技术融合: (1)XHTML和CSS基于标准表示技术...(2)DOM进行动态显示和交互 (3)XML和XSLT进行数据交换和处理 (4)XMLHttpRequest进行异步数据检索 (5)Javascript将以上技术融合在一起 客户端与服务器,可以在【不必刷新整个浏览器...监听下拉框值变化事件 只要下拉框值变化了,就与服务器进行交互 得到服务器返回值,解析XML 使用DOM把数据写到城市下拉框列表 后台分析 得到前台带过来数据 判断该数据是什么,返回对应XML文件...---- AJAX二级下拉联动案例【JSON版】 前面我们已经使用过了XML作为数据载体在AJAX与服务器进行交互。...只不过JSON是更加轻量级文本数据,在JavaScript能够方便地获取返回数据 在Struts2把Action数据封装成JSON格式,返回给异步对象 需要导入jar包 在配置文件配置继承json

    4.9K91

    (修订版)AJAX入门!

    XML) 异步JavaScript和XML Ajax实际上是下面这几种技术融合: (1)XHTML和CSS基于标准表示技术 (2)DOM进行动态显示和交互 (3)XML和XSLT进行数据交换和处理...监听下拉框值变化事件 只要下拉框值变化了,就与服务器进行交互 得到服务器返回值,解析XML 使用DOM把数据写到城市下拉框列表 8.1.2后台分析 得到前台带过来数据 判断该数据是什么,返回对应...---- 九、AJAX二级下拉联动案例【JSON版】 前面我们已经使用过了XML作为数据载体在AJAX与服务器进行交互。...9.1.1前台分析 监听下拉变动 得到服务器返回JSON数据 使用eval()进行解析,得到具体对象 使用DOM编程把数据填充到对应下拉框上 9.1.2后台分析 得到前台发送过来数据 判断具体数据是什么...只不过JSON是更加轻量级文本数据,在JavaScript能够方便地获取返回数据 在Struts2把Action数据封装成JSON格式,返回给异步对象 需要导入jar包 在配置文件配置继承json

    1.4K11

    AJAX入门!

    一、什么是Ajax Ajax(Asynchronous JavaScript and XML) 异步JavaScript和XML Ajax实际上是下面这几种技术融合: (1)XHTML和CSS基于标准表示技术...(2)DOM进行动态显示和交互 (3)XML和XSLT进行数据交换和处理 (4)XMLHttpRequest进行异步数据检索 (5)Javascript将以上技术融合在一起 客户端与服务器,...监听下拉框值变化事件 只要下拉框值变化了,就与服务器进行交互 得到服务器返回值,解析XML 使用DOM把数据写到城市下拉框列表 8.1.2后台分析 得到前台带过来数据 判断该数据是什么,返回对应...---- 九、AJAX二级下拉联动案例【JSON版】 前面我们已经使用过了XML作为数据载体在AJAX与服务器进行交互。...只不过JSON是更加轻量级文本数据,在JavaScript能够方便地获取返回数据 在Struts2把Action数据封装成JSON格式,返回给异步对象 需要导入jar包 在配置文件配置继承json

    1.7K20

    web自动化08-下拉选择框、弹出框、滚动条

    1、下拉选择框操作   下拉框就是HTML元素; 先列需求: 需求:使用‘注册A.html’页面,完成对城市下拉操作 1).选择‘广州’ 2).暂停2秒,选择‘上海’ 3).暂停...2秒,选择‘北京’ 我们首先可以通过直接定位下拉内容对应元素,完成对下拉框元素处理,我们也可以通过select类 我们先来认识select类:   说明:Select类是Selenium为操作...在HTML页面,由于前端技术框架原因,页面元素为动态显示,元素根据滚动条下拉而被加载   2....页面注册同意条款,需要滚动条到最底层,才能点击同意 先提需求:打开注册页面A,暂停2秒后,滚动条拉到最底层 说明:selenium并没有直接提供操作滚动条方法,但是它提供了可执行JavaScript...脚本方法,所以我们可以通过JavaScript脚本来达到操作滚动条目的。

    29740

    ASP.NET MVC5+EF6+EasyUI 后台管理系统(67)-MVC与ECharts

    你可以在下载界面下载包含所有图表构建文件,如果只是需要其中一两个图表,又嫌包含所有图表构建文件太大,也可以在在线构建中选择需要图表类型后自定义构建。...ECharts提供健全帮助文档,本节只演示其JSON格式,MVC返回符合EChart适合格式来动态显示报表展现。 EChartsJson格式对于初学者来说是比较复杂。...(option); 加载报表从后台获得Json数据 根据ECahrtsJson格式获得对应Json数据 ?...包含data其实是个List,所以们必须在返回数据序列化其数据格式,当然你返回数据必须都包含以上属性 后台方法: public JsonResult GetOptionByBarChart(GridPager.../api.html#echarts 本节示例代码下载   访问密码 69fd 代码修改Index.cshtml代码: @{ ViewBag.Title = "主页"; Layout =

    2.5K100

    Python每日一练(21)-抓取异步数据

    项目实战:爬取国家药品监督管理总局基于中华人民共和国化妆品生产许可证相关数据 在 Python每日一练(15)-爬取网页动态加载数据 一文笔者已经讲过如何爬取动态加载数据,本文在对其进行详细讲解...在我们平时浏览网页过程,可以发现有很多网站显示在页面上数据并不是一次性从服务端获取,有一些网站,如图像搜索网站,当滚动条向下拉时,会随着滚动条向下移动,有更多图片显示出来。...得到JavaScript 对象形式 JSON 数据,就可以任意访问数据了。...使用 requests 抓取 HTML 代码并没有经过 JavaScript 渲染,所以是在 JavaScript 渲染前代码,因此 requests抓取 HTML 代码与 Response 选项卡显示...项目实战:爬取国家药品监督管理总局基于中华人民共和国化妆品生产许可证相关数据 本节实现爬取 爬取国家药品监督管理总局基于中华人民共和国化妆品生产许可证相关数据 相关数据

    2.7K20

    一对一直播开发PHP源码

    一对一源码在php开发我们经常会遇到一些功能需要二级联动,二级联动就是说我们在选择一级select不同option,下面的二级option属性值在进行相应变动。...简言之就是两个select标签,选择第一个时候,第二个自动带出相关联数据。...一、Html 1.在一对一源码创建两个下拉框标签 上级标签读取返回数据,循环显示; 下级标签不设置数据值 代码如下: <label class...:添加click事件,回调读取下级数据列表,ajax返回json 代码如下: <script type="text/<em>javascript</em>" src="__PUBLIC__home/js/jquery.js...})() 二、Php 一对一源码<em>中</em>Ajax访问php地址,获取下级<em>数据</em>列表,返回<em>json</em> //根据上级获取下级信息 function getManagelists(){ $key

    2.3K60

    JSON & AJAX 满分学习文章,请收下

    文章目录 一、JSON 1、定义 2、格式 二、在 JavaScript JSON 1、表示 JSON 2、JSON 与 JS 对象转换 三、在 Java JSON 1、表示 JSON...它基于 ECMAScript (欧洲计算机协会制定 JS 规范)一个子集,采用完全独立于编程语言文本格式来存储和表示数据。简洁和清晰层次结构使得 JSON 成为理想数据交换语言。...3.2、二级联动实现思路 页面加载完,省份下拉框从后台获取省份数据; 将后台获取响应数据,渲染到省份下拉; 给省份下框绑定值改变事件,值发生改变之后,把选择省份 id 传给后台; 将后台获取响应数据...,渲染到城市下拉。...,当省份下拉框选项改变了,就发送请求获取这个省份 对应城市数据,拿到数据再使用 DOM 显示城市下拉 $p.change(function () { var

    2.8K20

    使用 Spring Boot 从数据库实现动态下拉菜单

    使用 Spring Boot 从数据库实现动态下拉菜单 动态下拉菜单(或依赖下拉菜单)概念对于编码来说是令人兴奋且具有挑战性。动态下拉列表意味着一个下拉列表值取决于前一个下拉列表中选择值。...一个简单示例是三个下拉框,显示区、taluk 和村庄名称,其中 taluk 值取决于区中选择值,村庄值取决于 taluk 下拉列表中选择值。...连接数据服务类可以使用Java和Spring Boot来实现。 HTML、CSS、JavaScript、jQuery 和 AJAX 可用于实现下拉列表。...函数 saylistDistrict() 从数据库检索数据,处理并返回 JSON 格式数据,具体解释如下: 建立数据库连接并调用相应选择查询来检索地区详细信息及其各自代码。...该网页很简单,只有基本布局,没有太多 CSS,因为本教程范围只是解释基于数据动态下拉列表。现在下拉菜单网页布局已经编码,是时候编写 AJAX 调用了。

    1K50

    ajax几个面试题「建议收藏」

    Ajax包含下列技术: 基于web标准(standards-basedpresentation)XHTML+CSS表示; 使用 DOM(Document ObjectModel)进行动态显示及交互;...使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。...三、get和post区别 代码上区别 1:get通过url传递参数 2:post设置请求头 规定请求数据类型 使用上区别 1:post比get安全 (因为post参数在请求体。...所以不论在安全性还是数据量级 post是最好选择) 四、简述ajax过程。 1. 创建XMLHttpRequest对象,也就是创建一个异步调用对象 2....(data){ //注意 jsonp返回数据json对象可以直接使用 //ajax 取得数据json字符串需要转换成json对象才可以使用。

    43820

    Javaweb07-三层架构(BaseDao)

    5.1.1 Ajax动态添加分类数据 //$(function() jQuery标志 $(function(){ //定位z展示分类下拉元素 var $cidSelect = $("...加载动漫数据时候,直接考虑到模糊匹配查询,全部查询就是不带条件查询; (这里代码又展示了一遍,主要是提示后面的操作是基于这些代码操作); //$(function() jQuery标志 $(function...select 先将修改传过来类型参数隐藏到一个input标签,在动态获取类型时候,JQuery获取原来类型参数,并选择给option标签添加selected参数; <% //获取前端参数,...,Ajax提交时候拼接参数 pageSize 页面大小 获取tfootpageSize,Ajax提交时候拼接参数 totalCount 数据总条数 Ajax获取,然后填入 totalCount ...无法控制其执行顺序,有时候会出错; 一个请求拿到另外一个请求rs数据;(这里数据总条数取到了某条数据id) 或第二个请求还没有从rs取出数据,rs就被关闭(No operations allowed

    1.8K10

    动图展示 60+ 个前端常用插件库合集

    函数库,目的是强化表格操作(如搜索、排序),并自动加入组件引入表格,使用非常灵活简便。...pickadate.js-日期/时间选择器 官网:pickadate.js chosen 官网:Chosen Github:chosen Chosen是一个jQuery插件,目的是让又长又笨重下拉式选单变得更友善...Moment.js 官网:Moment.js 轻量级专门解析、验证、操作、格式化日期JavaScript函数库,Moment.js是为浏览器和Node.js而设计,所有组件都可以在这两个环境下运行。...Bootstrap排版风格,可读入JSON格式数据,安装容易、支持响应式排版。 Headroom.js 官网:Headroom.js 把网站空间发挥到极限,不需要导航列表是隐藏,需要时出现。...Tabulator 官网:Tabulator Tabulator是相当容易操作表格内容产生器,只需要花很少时间就可以通过把数组或JSON格式资料生成HTML界面的表格。

    6.6K40

    javaeeOA项目(九)ajax学习,JavaScript结合ajax使用,实现二级联动

    JavaScript结合ajax进行操作 ...实现效果 第一个下拉选择一个省,第二个下拉框就会出现对应省下面的市。...要实现就是这种情况,一个下拉变化,导致另一个下拉框里面的内容实现变化 代码实现第一步 我们首先在jsp页面写两个下拉框 ? 以上下拉框,第一个下拉框有3个值,第二个下拉框里面什么都没有。...现在我们写ajax代码,让选择了第一个下拉框之后,第二个下拉框出现不同内容。...第二步,写ajax代码 也就是在第一个下拉框上写一个改变事件,当选择东西变了,就会触发这个事件,这个事件里面的内容就是根据这个选择东西,从后端获取对应数据之后,放到第二个下拉框里面。

    95210

    新手编程1001问(2)

    新手编程1001问(2) Q:‍前端如何实现页面下拉框Select联动? A:上一期,我们回答了JS/JQuery如何获取下拉框选中文本和值。那么今天问题,我们可以继续聊聊下拉框了。...下拉框在前端设计是一个很常用列表控件。独立下拉框要实现起来并不难。但是,有时候我们会遇到两个甚至多个下拉框需要联动问题,这时候,页面的实现就不是一个简单交互了。...它需要我们根据上一个下拉框选中值来动态更新下一个下拉列表。...因此,实现联动需要解决问题关键在于,页面不刷新情况下,能够根据上一个下拉值,获取下一个下拉列表数据,并更新到列表。...解决这个问题关键方法分两步: 第一步:使用Ajax,页面不刷新,获取下一个下拉列表数据。 第二步:使用JQery,将Ajax获取列表数据更新到指定下拉框。

    8K40

    xwiki开发者指南-主从视图教程

    更具体地说,我们希望有一个拥有2个字段HTML表单,当我们选择一个字段一个值,另一个字段基于第一个字段选择自动更新它值。...我们将采取州和城市例子:一个字段将让用户选择一个州(State),另外一个字段选择一个城市(City)。...第4步:修改State Class Sheet 让我们修改StateCode.StateSheet来实现动态显示City HTML Select。...doc.getValue('city')       #end       ))) {{/html}} {{/velocity}} 注意,我们使用一个JavaScript皮肤扩展,我们将在当前页面...我们将在下一步添加。 除了可以创建自己页面来返回JSON,我们也可以复用State应用程序Livetable结果页面。这将避免创建一个新页面,从而跳过第6个步骤。

    52810

    Apriso Modern UI样式系列之三 最强最实用组件Autocomplete

    概述 在Process Builder界面设计Form view可以设置下拉框和系统参数实现下拉选择,但功能比较简单,不能支持模糊输入选择,不能支持大数据量场景下下拉选择。...正如本系列一介绍,ModernUI包含了一些扩展Javascript、CSS和Operation实体,其中也包含了一些非常有用窗体组件。...支持Json数据、自定义Operation方式和默认Operation方式提供下拉列表数据 支持百万级大数据量以及动态分页下拉(需要配置成List类型系统参数) 支持执行选中、刷新回调函数 支持动态样式设置...null,上下文 data: [],直接指定Json格式下拉数据 limit: 30,分页行数 callbackSelected: '',选中回调函数 callbackRefreshed: '',刷新回调函数...▶第二步:在主界面的View Operation引入Javascript文件和css样式文件引用: src="[Apriso]/ModernUI/Controls/ModernUIAutoComplete

    15120
    领券