首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript -点击项目并从父div中删除它?

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

Stack Overflow用户
提问于 2016-04-27 14:38:14
回答 3查看 76关注 0票数 1

所以我有一个家长和一个孩子。JavaScript创建子div,ID &里面的文本是不同的。所以我试着做下一个。每个项目后面都会有X,如果您单击它将删除该项目,这可以吗?我用JavaScript尝试了一些东西,但是我不知道如何做这个部分,如果您单击该项目,然后它删除它。此外,它还必须删除一个包含相同项名称的类。我会在下面放一些代码。

HTML示例:

代码语言:javascript
复制
<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>

在项目购物车下面的div是由JavaScript通过单击“项目卡”来添加的。项目卡的名称从图片标题(项目的图像)。如果单击项目卡,则添加类"item-selected“。如果该项目将通过单击它被删除,那么它也应该从项目卡上的正确项中删除该项所选的类。这样的事可以做吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-04-27 14:45:43

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

代码语言:javascript
复制
$("#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()
});
代码语言:javascript
复制
#itemcart span {
  color:red;
}
代码语言:javascript
复制
<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>

票数 0
EN

Stack Overflow用户

发布于 2016-04-27 14:43:17

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

代码语言:javascript
复制
<?php
    foreach($products as $p) {
        echo '<div class="single-product" data-product-id="' . $p->id. '" data-product-price="' . $p->price . '">' . $product->name . '</div>';
    }
?>

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

代码语言:javascript
复制
$(".sincle-product[data-product-id=1]").function();
票数 0
EN

Stack Overflow用户

发布于 2016-04-27 15:09:44

您可以使用此脚本,然后必须在div中添加一个名为“removeItem”的类。

//Jquery库

代码语言:javascript
复制
<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>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36893065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档