jQuery从<div> </div> </form>中删除<form>

时间:2012-01-18 17:52:08

标签: jquery forms html

我在另一个问题中问过这个例子:
Fill in a form with jQuery
但我更愿意创建一个新问题来询问其他一些细节 我有一个div(面板),目前只包含一个表格 此表单应代表坐标列表。它有一些按钮'+'' - '来添加或删除几个坐标(以及表格)。 每个表单都由一个函数自动生成,并有自己的id。

<div id="panel" style="position: absolute; left: 190px; top: 300px; width: 400px; height: 300px; border: medium groove brown; background: none repeat scroll 0% 0% black; z-index: 100; color: white;">  
<form id="form_coord_0">  
X <input type="text" style="height: 25px; font-size: 10px;" size="2" name="X" id="coordX_0"/>  
Y <input type="text" style="height: 25px; font-size: 10px;" size="2" name="Y" id="coordY_0"/>  
<input type="button" id="edit_0" value="M"/>  
<input type="button" id="remove_0" value="-"/>  
<input type="button" id="add_0" value="+"/>  
<input type="button" id="go_0" value="go!"/>  
<br/>  
</div>  

我正在寻找一种方法:
- 删除一行和相关的表格
- 删除所有行,然后删除所有表格

我有这个功能:

function add_form(id_coord){  
    var new_form="<form id= '"+ id + "'> </form>";
    $("#panel").append(new_form);
}

添加一个表格 还有一个用于添加不同行的for循环 一旦必须删除一行,我宁愿编辑底层数据结构并清空div。然后它可以被另一个for循环重新填充。 问题如下:如何删除div的一个表单或每个表单? 我想将div.innerHTML设置为“”但我真的不喜欢那个解决方案。

3 个答案:

答案 0 :(得分:4)

  

删除一行和关联的表单

这将删除特定表单。如果这不是您的意思,您可以更改选择器。您可以选择任何元素并使用.remove()删除它们。

$("#specific-form-id").remove();
  

删除所有行,然后删除所有表单

您可以使用.empty()删除元素的所有子元素。

$("#panel").empty();

答案 1 :(得分:1)

我想你会喜欢你的“删除按钮”去除?

$('.remover').click(function(){
    $(this).closest('form').remove();
}); 
如果您向按钮添加“移除”类以便更容易定位

将会起作用

<input type="button" id="remove_0" value="-"/> 

删除所有表单只是一个简单的选择,并在适当的事件处理程序中删除。

$('form').remove();

答案 2 :(得分:0)

第一个例子

$("#panel").remove(line_id)

第二个例子

$("#panel").html('')