Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 向html和数组中添加div,如果删除,则需要从html和数组中删除div_Javascript_Jquery - Fatal编程技术网

Javascript 向html和数组中添加div,如果删除,则需要从html和数组中删除div

Javascript 向html和数组中添加div,如果删除,则需要从html和数组中删除div,javascript,jquery,Javascript,Jquery,我使用以下代码将div添加到我的html页面: $('.block:last').after( '<div class="block">' + blabla + '<span class="remove"><button type="button"></button></span></div>' ) 删除div也很完美 现在,如何将这些数据也精确地保存在一个数组中 提前感谢您可以这样做: var $elem

我使用以下代码将div添加到我的html页面:

$('.block:last').after(
    '<div class="block">' + blabla +
    '<span class="remove"><button type="button"></button></span></div>'
)
删除div也很完美 现在,如何将这些数据也精确地保存在一个数组中


提前感谢

您可以这样做:

var $elementToAdd = $('<div class="block">' + blabla +
    '<span class="remove"><button type="button"></button></span></div>');
yourArray.push($elementToAdd);
var indexInArray = yourArray.indexOf($elementToAdd);
$elementToAdd.data('index-in-array',indexInArray);
$('.block:last').after($elementToAdd);

您可以这样做:

var $elementToAdd = $('<div class="block">' + blabla +
    '<span class="remove"><button type="button"></button></span></div>');
yourArray.push($elementToAdd);
var indexInArray = yourArray.indexOf($elementToAdd);
$elementToAdd.data('index-in-array',indexInArray);
$('.block:last').after($elementToAdd);

请给我们看看你的数组代码。卡斯滕,我没有线索,我在想数组中的一个数组。所以我可以将它保存在mySql中。报价单[htmlcode][price result]您应该提供一些唯一的id,并将其保存在数组中,您可以在删除时删除该数组div@BhushanKawadkar当他试图检索数据时,唯一id对他没有帮助。他如何知道哪个块的哪个id。。他应该提供用于添加新块的完整事件、blabla来自何处、他需要在数组中保存哪种数据以及他需要所有块的数组还是只需要新添加的块。。最后,不需要添加/删除数组1-每个块都需要保存唯一的数字2-使用此保存的数字3在每个块中使用数据属性-使用映射和连接。添加新块和删除后使用数据属性编号的块请同时显示您的数组代码。Carsten,我没有和线索,我正在考虑数组中的数组。所以我可以将它保存在mySql中。报价单[htmlcode][price result]您应该提供一些唯一的id,并将其保存在数组中,您可以在删除时删除该数组div@BhushanKawadkar当他试图检索数据时,唯一id对他没有帮助。他如何知道哪个块的哪个id。。他应该提供用于添加新块的完整事件、blabla来自何处、他需要在数组中保存哪种数据以及他需要所有块的数组还是只需要新添加的块。。最后,不需要添加/删除数组1-每个块需要在每个块中保存唯一的数字2-使用数据属性和保存的数字3-使用映射和连接。添加新块和onremoveOP后使用数据属性编号的块声明删除div现在也可以完美地工作,那么您的答案是如何解决他与数组?@Muhammad Hannan Awan,是的,这与我上面的代码相同,只是比较短,但是添加/删除具有相同div的数组的最佳方法是什么?@CarstenLøvboAndersen对不起,我的错。请看编辑后的答案。我希望它能解决你的问题problem@MuhammadHannanAwan:“数组中的索引”这部分我不理解。“数组中的索引”是存储元素的数组中元素的索引。这也用于删除数组中的元素。我们将其保存为元素的数据属性,因此当用户单击关闭按钮时,您将在单击事件中获得该元素的索引。简单地从DOM和数组中删除元素,并使用indexOP声明删除div现在也很完美,那么您的答案如何解决他在数组中遇到的问题呢?@Muhammad Hannan Awan,是的,这与我上面的代码相同,只是比较短,但是,添加/删除具有相同div的数组的最佳方法是什么?@CarstenLøvboAndersen对不起,我的错。请看编辑后的答案。我希望它能解决你的问题problem@MuhammadHannanAwan:“数组中的索引”这部分我不理解。“数组中的索引”是存储元素的数组中元素的索引。这也用于删除数组中的元素。我们将其保存为元素的数据属性,因此当用户单击关闭按钮时,您将在单击事件中获得该元素的索引。只需使用该索引从DOM和数组中删除元素即可
$('.optionBox').on('click','.remove',function() {
    yourArray.splice($(this).parent().data('index-in-array'),1);
    $(this).parent().remove();
});