【问题标题】:Delete button next to corresponding inputfield相应输入字段旁边的删除按钮
【发布时间】:2017-01-11 19:29:31
【问题描述】:

我有一个数字输入字段数组,需要在每个字段旁边放置一个删除按钮。这是fiddle 供参考。

试图制作一个功能(见下文)但无法使其工作。请帮忙,在此先感谢:)

  function delamount() {
     $(".delbtn").click(function() {

         var a = $(this).data('value');
         var b = $("#value" + a);

         b.value = '0.00';


     });
 }

【问题讨论】:

  • 一件事,你有内联事件处理程序,而且在函数中,你将另一个事件处理程序附加到同一个按钮?
  • 您要设置的值是?它从未定义过。您在每个输入上放置的数据值字段需要放置在每个按钮上。
  • 感谢 Will 的回复,我知道有些不对劲。感谢您指出。

标签: javascript arrays button


【解决方案1】:

发生了一些事情:首先,您的小提琴不知道使用 jQuery。其次,是的,你定义了一个 onclick,然后你告诉 onclick 在点击时绑定函数,这变成了一个巨大的重复循环。试试这个:

var a, b;
  $(".delbtn").on("click", function() {

    a = $(this).data('for');
    b = $("#"+a);

    b.val('0.00');

  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="width: 25px; float:left;">
  <button data-for="value01" class="delbtn" id="delamt01">X</button>
  <button data-for="value02" class="delbtn" id="delamt02">X</button>
  <button data-for="value03" class="delbtn" id="delamt03">X</button>
  <button data-for="value04" class="delbtn" id="delamt04">X</button>
  <button data-for="value05" class="delbtn" id="delamt05">X</button>
</div>


<div style="width: 20%; float:left;">
  <input class="sizebox" type="number" id="value01" name="value01" value="0.00" />
  <br>
  <input class="sizebox" type="number" id="value02" name="value02" value="0.00" />
  <br>
  <input class="sizebox" type="number" id="value03" name="value03" value="0.00"/>
  <br>
  <input class="sizebox" type="number" id="value04" name="value04" value="0.00"/>
  <br>
  <input class="sizebox" type="number" id="value05" name="value05" value="0.00"/>
  <br>
</div>

我已经删除了 onclick,并通过 jQuery 绑定了点击处理程序。我将数据元素移动到按钮本身。希望对您有所帮助!

好的,然后我进行了更改—— data-value 属性现在是 data-for(很像标签的 for 属性)。这减少了对目标输入的一致命名的依赖。除此之外,几乎相同。

【讨论】:

    最近更新 更多