javascript - 防止删除最后一个子级 javascript

标签 javascript

我有这个 HTML 代码

<div class="form_group">
    <div id="p_scents">
    <a class="btn btn-warning btn-sm" onclick="addAffiliate()">+ Add Merchant ID</a> <a class="btn btn-danger btn-sm" onclick="deleteAffiliate()">X</a>
            <p><label for="p_scnts"><input type="text" required="true"  size="30" class="form-control" name="merchant[]" value="<?php echo $keys->affiliate ?>" placeholder="Input MerchantID" /></label>  </p>
          <p></p></div>
    <hr>  

当我按X时,它将删除最后一个子项。但我希望剩下的 1 个 child 或第一个 child 不会被删除..就像有一个警告..

Javascript

function addAffiliate()
{
   var scntDiv = $('#p_scents');
   var i = $('#p_scents p').size() + 1;
    $('<p><label for="p_scnts"><input type="text" required="true" id=id="p_scnt_'+i+'"size="30" class="form-control" name="merchant[]" value="" placeholder="Input MerchantID" /></label>  </p>').appendTo(scntDiv);
            i++;      
}

function deleteAffiliate()
{
     $('#p_scents p:last-child').remove();
}

最佳答案

检查是否存在超过 1 个项目。如果是这样,请将其删除。

function deleteAffiliate()
{
  var $items = $('#p_scents p');
  if ($items.length > 1) {
    $items.last().remove();
  } else {
    alert("At least 1 item must remain. Not deleting.");
  }
}

关于javascript - 防止删除最后一个子级 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27221865/

相关文章:

javascript - 无法通过 AJAX 将多维数组从 JavaScript 发送到 PHP

javascript - 如何通过innerHTML设置选择标签选项?

java - Nashorn:如何选择要调用的构造函数

javascript - 正在向归类为扩展 DOM 元素的元素添加方法

javascript - 我应该在每个文件中都需要一个模块还是需要一次并将其作为参数传递?

javascript - 为什么这个错误没有出现在我的 Redux Action 的 Catch 中?

javascript - 为什么 JavaScript toLowerCase 不起作用?

javascript - Javascript 重定向不适用于 IFrame,无需 IFrame 也可工作

javascript - 使用 peg.js 进行反向引用

javascript - 空格键解除警报