【问题标题】:How to remove an element by id?如何通过 id 删除元素?
【发布时间】:2012-03-07 20:01:50
【问题描述】:

我只是在这里尝试一个关于如何上传多个表单的教程 - http://www.maheshchari.com/multifile-upload/

基本上,它有一个链接,可以在单击时添加新输入。我的问题是,如何添加另一个链接来删除输入?

感谢您的帮助:)

【问题讨论】:

  • 那个网站各种破:(
  • 你能把你使用的代码贴出来吗?

标签: javascript


【解决方案1】:

您可以删除一个您知道使用 ID 的元素:

function removeById(id) {
  var element = document.getElementById(id);

  // A bit of robustness helps...
  if (element && element.parentNode) {
    element.parentNode.removeChild(element);
  }
}

【讨论】:

  • 我有疑问。实际上他问了一个问题“我的问题是,如何添加另一个链接来删除输入?”但你的回答是删除元素。这是 Zhaf 看的正确答案吗?
  • @balaphp - 不知道,只是想我会展示如何去做,实现是 OP 的问题。也许填写一个细节会导致一个连贯的后续问题?永远的乐观主义者。 :-)
【解决方案2】:

请将您的函数 add_file_field 更新为

var file_counter = 0;
function add_file_field(){
    file_counter++;
    var container=document.getElementById('file_container');
    var file_field=document.createElement('input');
    file_field.name='images[]';
    file_field.type='file';
    file_field.id='file_'+file_counter;
    container.appendChild(file_field);
    var remove_field = document.createElement('a');
    remove_field.href = "javascript:removeById('"+'file_'+file_counter+"');removeById('"+'remove_field_'+file_counter+"');";
    remove_field.innerHTML = "Remove')";
    remove_field.id = 'remove_field_'+file_counter;
    var br_field=document.createElement('br');
    container.appendChild(br_field);
}

这会创建一个 并且还在你的javascript中添加函数removeById,这样当任何人点击删除按钮时,文件类型字段将被删除。也发在之前的帖子里

function removeById(id) {
  var element = document.getElementById(id);
  // A bit of robustness helps...
  if (element && element.parentNode) {
    element.parentNode.removeChild(element);
  }
}

【讨论】:

    【解决方案3】:

    很简单,

    document.getElementById("_id").parentNode.removeChild(document.getElementById("_id"));  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-06
      • 1970-01-01
      • 2017-10-24
      • 1970-01-01
      • 2020-07-20
      • 2012-08-03
      • 2020-06-18
      相关资源
      最近更新 更多