繁体   English   中英

JavaScript - 单击项目并从父div中删除它?

[英]JavaScript - Clicking on item and deleting it from the parent div?

所以,我有一个父div和子div。 JavaScript创建子div,ID和里面的文本是不同的。所以我试着做下一个。 每个项目后面都会有X,如果你单击它会删除该项目,这可能吗? 我尝试了一些JavaScript,但我不明白如果你点击该项目然后删除它,该怎么做。 此外,它还必须删除一个包含相同项目名称的类。 我将在下面放一些代码。

HTML示例:

<div id="itemcart" style="float: left;height: 184px;width: 330px;left: 245px;">
  <div id="★_Butterfly_Knife__Crimson_Web_Field-Tested">★ Butterfly Knife | Crimson Web (Field-Tested)</div>
  <div id="AWP__Asiimov_Battle-Scarred">AWP | Asiimov (Battle-Scarred)</div>
  <div id="AK-47__Wasteland_Rebel_Field-Tested">AK-47 | Wasteland Rebel (Field-Tested)</div>
  <div id="M4A1-S__Cyrex_Field-Tested">M4A1-S | Cyrex (Field-Tested)</div>
  <div id="AWP__Corticera_Minimal_Wear">AWP | Corticera (Minimal Wear)</div>
  <div id="StatTrak™_USP-S__Torque_Field-Tested">StatTrak™ USP-S | Torque (Field-Tested)</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Souvenir_Nova__Walnut_Field-Tested">Souvenir Nova | Walnut (Field-Tested)</div>
  <div id="Galil_AR__Kami_Factory_New">Galil AR | Kami (Factory New)</div>
  <div id="Tec-9__Red_Quartz_Field-Tested">Tec-9 | Red Quartz (Field-Tested)</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
  <div id="Chroma_2_Case">Chroma 2 Case</div>
</div>

通过点击“item-card”,JavaScript中添加了在itemcart下的div。 物品卡从图片标题中获取名称(项目图像)。 如果单击了项目卡,则会添加“项目选择”类。 如果该项目将被单击删除,那么它还应该从项目卡上的正确项目中删除该项目选择的类别。 这样的事情可能吗?

在HTML5中,您可以为标记声明自定义属性。 例如,如果您要打印产品,您将要执行类似的操作:

<?php
    foreach($products as $p) {
        echo '<div class="single-product" data-product-id="' . $p->id. '" data-product-price="' . $p->price . '">' . $product->name . '</div>';
    }
?>

之后,您可以使用jQuery查询与单个项目进行交互

$(".sincle-product[data-product-id=1]").function();

你可以使用.append() .parent() .remove()

 $("#itemcart div").each(function() { // append `span` having text `"X"` to each `div` in `#itemcart` $(this).append("<span> X</span>"); }); $("#itemcart span").click(function() { // remove clicked `span` parent element $(this).parent().remove() }); 
 #itemcart span { color:red; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script> <div id="itemcart" style="float: left;height: 184px;width: 330px;left: 245px;"> <div id="★_Butterfly_Knife__Crimson_Web_Field-Tested">★ Butterfly Knife | Crimson Web (Field-Tested)</div> <div id="AWP__Asiimov_Battle-Scarred">AWP | Asiimov (Battle-Scarred)</div> <div id="AK-47__Wasteland_Rebel_Field-Tested">AK-47 | Wasteland Rebel (Field-Tested)</div> <div id="M4A1-S__Cyrex_Field-Tested">M4A1-S | Cyrex (Field-Tested)</div> <div id="AWP__Corticera_Minimal_Wear">AWP | Corticera (Minimal Wear)</div> <div id="StatTrak™_USP-S__Torque_Field-Tested">StatTrak™ USP-S | Torque (Field-Tested)</div> <div id="Chroma_2_Case">Chroma 2 Case</div> </div> 

您可以使用此脚本,然后必须向div添加名为“removeItem”的类

// Jquery库

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>

<script>
    window.onload = function() {
        $( ".removeItem" ).click(function() {
            this.remove();
        });
    }
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM