最初から入力フィールドがあり、値を変更すると直ちに更新が行われます。次に、入力フィールドを追加し、後で更新ボタンを押さずに、コンテンツを編集するときに値を変更するようにしたいと考えています。入力変更トリガーが何度も繰り返される
このコードはこれを行いますが、入力フィールドを追加して最初の入力フィールドの1つを編集すると、計算機能が何度か実行されます。私は余分な機能のトリガを取り除くためにライン4-6を(下から)削除することができますが、追加された入力フィールドは動作しません。どのようにこれを解決するための任意のアイデアですか?
HTML:
<input type="number">
<table>
<tr>
<td id="linkedEventList">
<ol>
</ol>
<button id="btn">Add input fields</button>
</td>
</tr>
</table>
のjQuery/Javascriptを:
jQuery(function($) {
$('input').on('input', function(e) {
calculate();
});
});
function calculate() {
alert("Checking how many times this function runs");
}
$(document).ready(function() {
$("#btn").click(function() {
$("#linkedEventList ol").append("<li ><input type='text'></input></li>");
$('input').on('input', function(e) {
calculate();
});
});
calculate();
});
https://jsfiddle.net/Marbled/mtp9vh3a/1/