js动态添加与删除ul中的li

js动态添加与删除ul中的li,第1张

1、使用jquery脚本库,因此先引入jquery脚本文件。

2、html代码里,就是一个ul列表,里面有二个img控件,还有一个按钮。要注意的是给ul加了一个样式名。

3、使用jquery,先为按钮添加一个点击事件。

4、在点击事件函数里,我们直接使用js代码就能获取到img控件了,var imgs = $(".jy_ul li img")

这就是使用jquery的方便,ul列表的样式名,然后按层次 li img的控件名,就能获取到图片控件了。

5、用alert输入图片的src属性来验证获取到的数据是否准确。因为有两个图片控件,所以代码里获取到的是一个数组,我们输出第二个图片的src。

6、运行页面,可以看到有二个图片和一个按钮,点击按钮。

7、点击后d出了第二张图片的src属性,对比代码,数据正确。

添加删除Div,有很多种方法。下面具一个简单的方法。

通过修改html内容来 *** 作

<body>

<input type="button" id="btn"/>

<a href="javascript:" id="div-box"></a>

</body>

<script>

    var oBtn = document.getElementById('btn')

    var oBox = document.getElementById('div-box')

    oBtn.onclick = function () {

        var html = '<div style="width:100px height:100px background: #ccc"></div>'

        if (oBox.innerHTML == '') {

            oBox.innerHTML = html

        } else {

            oBox.innerHTML = ''

        }

    }

</script>

我写的,支持IE,FF,但删除4后,后续序号还不能变,需要改进,因为本身有工作在身,来不及写。楼主可以先拿去参考,要改成那样不会很难的。可以考虑每次删除后都执行一个重置序号函数。

<html>

<head>

<title></title>

<script type="text/javascript">

var item_index=3

function AddItem() {

var myNameList = document.getElementById('divVoteItemPanel')//目标DIV

//创建span用于选项信息

var myNewSpan = document.createElement('span')

var myNewSpanValue = document.createTextNode("选项" + item_index)

//myNewSpan.id = "spanshow" + item_index

//myNewSpan.href = item_index

myNewSpan.appendChild(myNewSpanValue)

//创建input

var myNewInput = document.createElement('input')

myNewInput.name = 'TextVoteItem'

//创建a删除按钮

var myDelete = document.createElement('a')

var myDeleteValue = document.createTextNode('删除')

myDelete.id = "adelete" + item_index

myDelete.href = "#"

myDelete.onclick = Function("deleteID(" + item_index + ")")

myDelete.appendChild(myDeleteValue)

//创建换行容器div

var myDiv = document.createElement('div')

myDiv.id = "amydiv" + item_index

myDiv.appendChild(myNewSpan)//添加span到div

myDiv.appendChild(myNewInput)//添加input到div

myDiv.appendChild(myDelete)//添加a删除按钮到div

//添加div到总div

myNameList.appendChild(myDiv)

item_index++

}

function deleteID(id) {

var amydiv = document.getElementById("amydiv" + id)//获取显示控件

var myNameList = document.getElementById('divVoteItemPanel')//目标DIV

myNameList.removeChild(amydiv)

}

</script>

</head>

<body>

<form id="form1" runat="server">

<div>

<table width="98%">

<tr>

<td colspan="3" style="background:#aabbcc">添加投票</td>

</tr>

<tr>

<td>主题:</td>

<td>你认为以下哪个最可爱?</td>

<td style="width:50%"></td>

</tr>

<tr>

<td>

<hr />

<div id="divVoteItemPanel">

<div><span>选项1</span><input type="text" name="TextVoteItem" maxlength="50" /></div>

<div><span>选项2</span><input type="text" name="TextVoteItem" maxlength="50" /></div>

</div>

<div><a href="#" onclick="AddItem()" >添加选项</a></div>

</td>

</tr>

</table>

</div>

</form>

</body>

</html>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11547328.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存