js中点击按钮时自动增加一行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中点击按钮时自动增加一行相关的知识,希望对你有一定的参考价值。

js中有一个新增和删除按钮,当点击新增时,table自动增加一行,当点击删除时删除checkbox选中的那行,怎么实现呢,(不好意思财富值没有不够了,大家帮帮忙哦)

1、新建一个html文件,命名为test.html。

2、在test.html文件里,创建一个button按钮,并设置其id属性为dz,用于下面获得按钮对象,实现js点击按钮事件。

3、给button绑定点击事件,当按钮被点击时,执行hs()函数。

4、在test.html文件的js标签内,定义hs()函数,在函数内使用alert() 方法弹出"我被点击了"的内容。

5、在js内,使用window对象中的onload事件,当网页加载完时,执行function函数。

6、在function函数内,通过getElementById()方法获得按钮对象,使用click()方法点击按钮。

7、在浏览器打开test.html文件,当打开网页时,js自动执行点击事件。

参考技术A

1、新建一个HTML文件,命名为test.html。

2、在test.html文件中,使用p标签定义一段文字,并且为p标签定义一个值为demo的id属性,方便下面获得p标签对象。

3、再在test.html文件中,使用input标签定义一个名称为“点击”的按钮,用于实现点击的效果。

4、给input标签按钮绑定onclick点击事件,通过点击事件触发去操作p元素内容文字的大小。

5、使用JS定义一个函数handel(),在handel()方法内编写JS代码实现改变文字的大小,handel()方法通过onclick事件触发执行。

6、在浏览器运行test.html文件,查看实现的效果。

参考技术B

直接上代码:

<input type="button" value="增加" id="addTable"/>
<input type="button" value="删除" id="deleteTable"/>
<table id="table1"></table>
$(document).ready(function()
    $("#addTable").click(function()
       var tr="<tr><td><input type=\\"checkbox\\" name=\\"check\\"/>"+
              "</td><td>111</td><td>222</td><td>333</td></tr>";
    $("#table1").append(tr);  
    );
    $("#deleteTable").click(function()
        var check = document.getElementsByName("check");
        for(var i=1;i<=check.length;i++)
            if(check[i].checked)
                 document.getElementById('table1').deleteRow(i);
            
        
    )
)
没测试,自己试试,不行再问

追问

试了,没有反应

追答

你导入jquery库了?给你改一下

<input type="button" value="增加" id="addTable"/>

<input type="button" value="删除" id="deleteTable"/>

 <script type="text/javascript" src="jquery-1.7.2.min.js"></script>//记得导入这个库

<script>

$(document).ready(function()

    $("#addTable").click(function()

       var tr="<tr><td><input type=\\"checkbox\\" name=\\"check\\"/>"+

              "</td><td>111</td><td>222</td><td>333</td></tr>";

    $("#table1").append(tr);  

    );

    $("#deleteTable").click(function()

        var check = document.getElementsByName("check");

        for(var i=0;i<check.length;i++)

            if(check[i].checked)

                 document.getElementById('table1').deleteRow(i);

                 i--;

           

       

    )

)

</script>

亲测成功。给你个jquery库

追问

我用的是Adobe Dreamweaver CS5,怎麼导入jquery库?

追答

你打开代码,把那句话放进去就行,不过路径要对。加Q吧,541522788

本回答被提问者采纳
参考技术C

动态添加,动态删除

参考技术D var tble=document.getElementById("table");var tr=document.createElement("tr");var td=document.createElement("td");tr.appendChild(td);table.appendChild("tr");

js如何实现点击新增按钮之后自动增加一行,最多增加四行

我用了一个简单的,但是不管用,好像是id都是相同的,唉。大神求支招

利用table的head or footer

<table>
<tbody>
</tbody>
<tfoot>
<tr>
   <td></td>
</tr>
</tfoot>
</table>

javascript时,复制 table.tfoot.tr 即可。删除时,删除tbodies.tr即可。

参考技术A 你的append函数呢,把完整代码放上来吧,文字版追问

function append()
var tr = $("#areaText");
tr.after(tr.clone());

这是我用的函数

这是效果。后两个生成的填上的数值都只在第一个显示,清除按钮也只能操作第一个文本框

追答function append(ele) 
   var tr = $("#areaText");
   tr.clone().insertBefore($(ele).parent().parent());

onclick要改一下:

<a href=......  onclick="append(this)"  ......>新增</a>

追问

还是跟以前一样啊。这还是从第二个文本框选的,但是依旧是在第一个文本框显示的。而且清除按钮还是只能清除第一行文本框的内容。

追答

你没有给我看你是怎么清除的。我只是回答新增行的问题。
只能清除第一行估计你是通过清除id为areaText的元素这个方式实现的,你只要改成移除这个“清除按钮”的父级的父级(也就是tr)这个就行了。$(this).parent().parent().remove();

追问

先不管清除了。就说新增吧,就是这个文本框,文本框里面是选择地区。我在新增的文本框里面选择了地区之后他们却显示在第一个文本框中,这是什么问题。

追答

你网页代码都没拿上来我咋知道什么问题。不过我几乎可以肯定是你绝对用了插件,这个插件恰好是通过id来初始化的。

以上是关于js中点击按钮时自动增加一行的主要内容,如果未能解决你的问题,请参考以下文章

js中点击按钮时自动增加一行

js如何实现点击新增按钮之后自动增加一行,最多增加四行

用js实现表单增加一行删除一行时,序号自动改变

求助js问题,点击按钮给一个数组增加一个元素,一直点,一直增加

IOS 自带的返回按钮,点击后js代码不执行

js代码 点击一次按钮就打印出一个文本框