动态加载下拉框列表并添加onclick事件
2024-08-26 18:30:49
1. js动态加载元素并设置属性
摘自(http://www.liangshunet.com/ca/201408/336848696.htm)
<div id="parent"></div> function addElementDiv(obj) {
var parent = document.getElementById(obj);
//添加 div
var div = document.createElement("div");
//设置 div 属性,如 id
div.setAttribute("id", "newDiv");
div.innerHTML = "js 动态添加div";
parent.appendChild(div);
}
调用:addElementDiv("parent");
2. bootstrap下拉框
摘自(http://www.w3cschool.cc/bootstrap/bootstrap-v2-dropdown-plugin.html)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Bootstrap dropdown with tabs and pills example</title>
<link href="/twitter-bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap.css" rel="stylesheet" type="text/css" /> </head>
<body>
<ul class="nav nav-pills">
<li class="dropdown all-camera-dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
Tutorials
<b class="caret"></b>
</a>
<ul class="dropdown-menu">
<li data-filter-camera-type="all"><a data-toggle="tab" href="#">HTML5</a></li>
<li data-filter-camera-type="Alpha"><a data-toggle="tab" href="#">PHP</a></li>
<li data-filter-camera-type="Zed"><a data-toggle="tab" href="#">MySQL</a></li>
<li data-filter-camera-type="Bravo"><a data-toggle="tab" href="#">JavaScript</a></li> </ul>
</li></ul>
<script type="text/javascript" src="/twitter-bootstrap/twitter-bootstrap-v2/docs/assets/js/jquery.js"></script>
<script type="text/javascript" src="/twitter-bootstrap/twitter-bootstrap-v2/docs/assets/js/bootstrap-dropdown.js"></script>
</body>
</html>
3. 根据1、2可得到如下两段代码,获取后台返回数据,动态生成<li>标签
function addLiElement(obj)
{
//data为后台返回的数据
jQuery.getJSON('http://localhost:8080/adep/getModuleData', null, function(data) {
var keys = data.key[0];
var s=document.getElementById(obj) for(var i=0 ; i<keys.length ; i++)
{
var li = document.createElement("li");
var a = document.createElement("a");
li.appendChild(a);
a.innerHTML = keys[i];
a.setAttribute("data-toggle","dropdown");
a.setAttribute("href","#");
s.appendChild(li);
}
});
}
addLiElement("moduleul");
附html代码
<div class="navbar">
<div class="container">
<ul class="nav nav-pills">
<li class="dropdown all-camera-dropdown" id="accountmenu">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">请选择模块<b class="caret"></b></a>
<ul class="dropdown-menu" id="moduleul">
<li data-filter-camera-type="all"><a data-toggle="tab" href="#">所有模块</a></li>
</ul>
</li>
</ul>
</div>
</div>
最新文章
- 《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。附小文:招.NET开发,结果他转JAVA了,一切都是为了生活
- 深入理解javascript原型和闭包(4)——隐式原型
- android获取本地图片并显示图片
- 用javascript判断一个html元素是否存在的五种方法:
- OC语言-08-深拷贝与浅拷贝详解(示例)
- ci总结
- 理解C#系列 / 核心C# / 判断&;循环&;跳转
- VS(Microsoft Visual Studio2010)工具打开项目所需的应用程序,出现未安装(.csproj)的应用程序的解决办法
- 在 Ubuntu 12.04 上安装 GitLab6.0
- [Leetcode] Sort Colors (C++)
- 使用zeranoe的自动化脚本mingw-w64-build-3.6.4在ubutun14.04_64bit上交叉编译ffmpeg 2.5
- safari的input问题
- Error pulling origin: error: Your local changes to the following files would be overwritten by merge
- [js高手之路]Node.js+jade+express+mongodb+mongoose+promise实现todolist
- 使用vue-axios请求geoJson数据报错的问题
- shell-自动按省市建立文件夹,并在每个城市下创建当前日期文件夹
- openstack 相关服务常用命令整理
- 2018.11.01 NOIP训练 cost数(搜索+容斥原理)
- MAC下调试JSON接口的工具(HTTP抓包工具)
- 【LOJ】#2264. 「CTSC2017」吉夫特
热门文章
- 自己动手实现简单的Vector
- 学习C++所需看的书和顺序
- 数学(线性规划): ZJOI2013 防守战线
- Manacher Ural 1297 Palindrome
- 线段树(区间修改、区间查询) HDU 1754 I Hate It
- hihoCoder 1392 War Chess 【模拟】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛)
- Java中的数据类型及相互转换方法
- Solr使用solr4J操作索引库
- POJ 2431 Expedition (STL 优先权队列)
- LTTng调试: 一个系统软件工程师的随手涂鸦