JS如何添加行和删除行?

JS如何添加行和删除行?,第1张

<!DOCTYPE html>

<html lang="">

<head>

<meta charset="gb2312">

<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">

<title>123</title>

<script src="Scripts/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(function(){

var spotMax = 30

if($('div.spot').size() >= spotMax) {$(obj).hide()}

$("input#add").click(function(){     addSpot(this, spotMax)

})

})

function addSpot(obj, sm) {

$('div#spots').append(

'<div>' +

'<span><input name="shengfen" type="text" /></span>'+

'<span><input name="diqu" type="text" /></span>'+

'<input type="button" class="remove spot01" value="删除行" /></div>')

.find("input.remove").click(function(){

$(this).parent().remove()

$('input#add').show()

})

if($('div.spot').size() >= sm) {$(obj).hide()}

}

</script>

</head>

<body>

<span><input name="shengfen" type="text" /></span>

<span><input name="diqu" type="text" /></span>

<input type="submit" id="add" name="Submit" value="添加行" >

<div>

<form method="post" name="asdf" id="asdf"><div id="spots"></div></form>

</div>

</body>

</html>

效果这样(样式再自己调)

要加jQuery插件进去

不懂再追问

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属性,对比代码,数据正确。

window.onload = function () {

    const params = document.getElementById('params')

    const ul = params.querySelector('ul')

    const addBtn = ul.querySelector('#add')

    addBtn.onclick = function (e) {

        const newli = document.createElement('li')

        newli.appendChild(document.createElement('input'))

        const btn = document.createElement('input')

        btn.setAttribute('type', 'button')

        btn.setAttribute('value', '删除')

        btn.setAttribute('opt-type', 'del')

        newli.appendChild(btn)

        ul.appendChild(newli)

    }

    ul.onclick = function (e) {

        const target = e.target

        const optType = target.getAttribute('opt-type')

        if (target.nodeName === 'INPUT' && target.type === 'button' && optType === 'del') {

            this.removeChild(target.parentNode)

        }

    }

} <div id="params">

    <ul>

        <li><input type="text"><input id="add" type="button" value="添加一行"></li>

    </ul>

</div>

点击"添加一行",生成一条li,包含input,然后append进ul里边。点击删除,用ul删除按钮父元素li。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存