实现如下的功能

非常简单的一个小训练。

思想:

1.首先创建text和一个button

代码如下、

 <body>
<input type="text" id="text1"/>
<input id="btn1" type="button" value="创建" />
<ul> </ul> </body>

2.用js createElement('li');创建li标签放进ul里面

js代码如下

 <script>
window.onload=function(){
var oBtn=document.getElementById("btn1");
var text1=document.getElementById("text1");
var oUl =document.getElementsByTagName("ul")[0]; oBtn.onclick=function()
{
var oLi=document.createElement('li'); //创建一个没有内容的li标签
var isLi=oUl.getElementsByTagName('li'); //获取li数组
if (isLi.length>0) //判断ul里面有没有li标签,如果有,将创建的li放在所有li[0]的前面
{
oLi.innerHTML=text1.value+' '+"<a href='javascript:'>删除</a>";
oUl.insertBefore(oLi, isLi[0]);
}
else //否则直接添加到ul上,即是没有li标签在ul上
{
oLi.innerHTML=text1.value+' '+"<a href='javascript:'>删除</a>";
oUl.appendChild(oLi);
} //删除功能
var oA=oUl.getElementsByTagName("a");
if(oA) //如果a标签存在
{
for(var i=0;i<isLi.length;i++)
{
oA[i].onclick=function() //点解a标签就删除其父节点,。即是li标签
{
oUl.removeChild(this.parentNode);
}
}
} }
};
</script>

其实代码非常简单,自己写写,练习一下熟练度。

js创建节点,小试牛刀的更多相关文章

  1. js创建节点及其属性

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. js 创建节点 以及 节点属性 删除节点

    case 'copy': var B1 = document.getElementById("B1"); //获得B1下的html文本 var copy_dom = documen ...

  3. js 创建节点

    //获取对象 console.log(obj)//字符串转对象 var ob = JSON.parse(data); //对象转为字符串 console.log(JSON.stringify(obj) ...

  4. js创建子节点

    <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">      ...

  5. JS DOM创建节点

    DOM节点操作之增删改查 document.write() 可以向文档中添加节点 但是有个致命问题,会把文档原有的节点全部清空 因此不推荐使用 <!DOCTYPE html> <ht ...

  6. 第十三课:js操作节点的创建

    浏览器提供了多种方法创建节点.比如:document.createElement,innerHTML,insertAdjacentHTML,createContextualFragment. docu ...

  7. js添加创建节点和合并节点

    var _div = document.createElement("div"), //创建节点 txt1 = document.createTextNode("123& ...

  8. JQuery_DOM 节点操作之创建节点、插入节点

    一.创建节点 为了使页面更加智能化,有时我们想动态的在html 结构页面添加一个元素标签,那么在插入之前首先要做的动作就是:创建节点 <script type="text/javasc ...

  9. js创建元素

    js创建多条数据,插入到页面中的方法. 方法一: 执行时间大概在35ms左右. 这个就属于使用字符串拼接之后,再一次性的插入到页面中.缺点是,容易导致事件难以绑定. 方法二: 执行时间不定,最少的在8 ...

随机推荐

  1. C#日志记录函数

    错误日志记录在程序运行的实际维护中定位问题具有很大作用,日志越详细,反馈处理问题越方便. 常用的一个B/S架构下的日志函数. //日志记录函数 private void WriteLog( strin ...

  2. C#面向对象的三大特性

    下面是面向对象的本人解析的图片可以让你们更好的理解一下!!! 一,封装: 我们可以把世界上任何一个东西都看作为一个对象,那么我们这里以人为例,一个人就肯定是一个对象了.那么封装是什么呢?封装就是这个人 ...

  3. Android应用增加计时器

    昨天写的Sudoku游戏需要增加计时器功能,使用Chronometer实现如下,由于Chronometer自己在调用stop之后后台的计时器还会继续增加,所以暂停功能需要额外实现: 在StartAct ...

  4. 用meta-data配置参数

    在接入第三方渠道SDK的时候,经常会看到其配置文件AndroidManifest.xml有类似如下的定义: <!-- appid --> <meta-data android:nam ...

  5. Qt线程(2) QThread中使用WorkObject

    一般继承QThread的WorkThread都会在重载的run()中创建临时的WorkObject,这样能确定这个WorkObject在该thread中使用 那如果这个WorkObject是个Sing ...

  6. C# 获取MAC地址

    /********************************************************************** * C# 获取MAC地址 * 说明: * 在C#中获取本 ...

  7. ueditor在使用requirejs时,报ZeroClipboard undefined错误

    再网上找到了 http://blog.csdn.net/xundh/article/details/44536665       这样一篇文章, 其中原因说的很明白了 是因为在有requirejs时, ...

  8. jquery选择器之基本筛选器

    HTML示例代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  9. 一步步构建自己的AngularJS(2)——scope之$watch及$digest

    在上一节项目初始化中,我们最终得到了一个可以运行的基础代码库,它的基本结构如下: 其中node_modules文件夹存放项目中的第三方依赖模块,src存放我们的项目代码源文件,test存放测试用例文件 ...

  10. MyEclipse Spring 学习总结二 Bean的生命周期

    文件结构可以参考上一节 Bean的生命周期有方法有:init-method,destroy-method ApplicationContext.xml 文件配置如下: <?xml version ...