remove()函数不删除ul列表中的项目

时间:2016-06-13 07:56:20

标签: javascript php jquery codeigniter-2

我在下拉列表中创建了一个javascript函数选择它添加元素并计算添加产品的总量现在我想要做的是创建一个函数来删除从下拉列表中添加的产品但是当我点击时删除按钮我们只删除所选按钮,而不是通过单击按钮删除我想要删除的行。您可以查看这个小提琴,并将了解它的作用https://jsfiddle.net/h1k6mohs/,而且我的脚本不起作用可能是因为它不是调用下面的函数是我的PHP脚本文件

控制器 Home.php

public function addpart() {
            $part        = $this->input->post('parts');
            $part_modify = explode(")", $part);
            $part_id     = $part_modify[0];
            $old_price   = $this->input->post('old_price');
            $old_minutes = $this->input->post('old_minutes');
            $data        = $this->get_data->data_cart($part_id, $old_price, $old_minutes);
            echo $data;
        }

        public function removepart() {
            $part_id     = $this->input->post('partid');
            $old_price   = $this->input->post('old_price');
            $old_minutes = $this->input->post('old_minutes');
            $data        = $this->get_data->delete_part($part_id, $old_price, $old_minutes);
            echo $data;
        }

模型 Get_data.php

public function data_cart($part_id, $old_price, $old_minutes) {
        $get_data = $this->db->get_where('rapair_parts', array('id' => $part_id));
        $total_minutes = $get_data->row()->repair_time + $old_minutes;
        $total_price   = $get_data->row()->part_price + $old_price;

        $html  = '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Repair time</div>';
        $html .= '<div class="col-xs-6">'.$total_minutes.' mins</div></div>';
        $html .= '<input type="hidden" id="minutes_parts" value="'.$total_minutes.'" />';
        $html .= '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Discount</div>';
        $html .= '<div class="col-xs-6">'."&pound;".'0.00</div></div>';
        $html .= '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Total</div>';
        $html .= '<div class="col-xs-6">&pound;'.$total_price.'</div></div>';
        $html .= '<input type="hidden" id="price_parts" value="'.$total_price.'" />';

        return $html;
    }

    public function delete_part($part_id, $old_price, $old_minutes) {
        $get_data = $this->db->get_where('rapair_parts', array('id' => $part_id));
        $total_minutes = $get_data->row()->repair_time - $old_minutes;
        $total_price   = $get_data->row()->part_price - $old_price;

        $html  = '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Repair time</div>';
        $html .= '<div class="col-xs-6">'.$total_minutes.' mins</div></div>';
        $html .= '<input type="hidden" id="minutes_parts" value="'.$total_minutes.'" />';
        $html .= '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Discount</div>';
        $html .= '<div class="col-xs-6">'."&pound;".'0.00</div></div>';
        $html .= '<div class="col-xs-12">';
        $html .= '<div class="col-xs-6">Total</div>';
        $html .= '<div class="col-xs-6">&pound;'.$total_price.'</div></div>';
        $html .= '<input type="hidden" id="price_parts" value="'.$total_price.'" />';

        return $html;
    }

请帮我解决这个错误

2 个答案:

答案 0 :(得分:4)

Chrome中的元素有一个.remove()方法,允许自行删除元素而不必从父元素中删除。

所以&#34;删除&#34;是一个保留关键字,它是问题以及它删除元素而不执行函数的原因。您需要为您的功能选择其他名称。

答案 1 :(得分:-1)

我浏览了你的代码,根据你使用的代码你在jQuery中使用了remove(),所以你可以直接申请HTML,请按照下面的代码。

<div id="js-part">
  <li id="parts3" style="display: list-item;" onclick="remove();">
    <div class="col-md-9"><i class="fa fa-check-circle"></i> Wifi Antenna</div>
    <div class="col-d-3"><a>Remove</a></div>
  </li>
  <li id="parts1" style="display: list-item;" onclick="remove();">
    <div class="col-md-9"><i class="fa fa-check-circle"></i> Glass Screen</div>
    <div class="col-d-3"><a >Remove</a></div>
  </li>
  <li id="parts4" style="display: list-item;" onclick="remove();">
    <div class="col-md-9"><i class="fa fa-check-circle"></i> Rear Camera</div>
    <div class="col-d-3"><a>Remove</a></div>
  </li>
  <li id="parts5" style="display: list-item;" onclick="remove();">
    <div class="col-md-9"><i class="fa fa-check-circle"></i> Front Camera</div>
    <div class="col-d-3"><a>Remove</a></div>
  </li>
</div>

<div id="total">
  <div class="col-xs-12">
    <div class="col-xs-6">Repair time</div>
    <div class="col-xs-6">170 mins</div>
    <input type="hidden" id="minutes_parts" value="170">
  </div>

  <div class="col-xs-12">
    <div class="col-xs-6">Discount</div>
    <div class="col-xs-6">£0.00</div>
  </div>

  <div class="col-xs-12">
    <div class="col-xs-6">Total</div>
    <div class="col-xs-6">£362</div>
    <input type="hidden" id="price_parts" value="362">
  </div>
</div>

所以,我在点击每个li元素时直接删除div。