var sieve_presetsElem = document.getElementById("sieve_presets"); if (sieve_presetsElem) { $.ajax({ dataType: 'json', url: '/api/v1/get/presets/sieve', jsonp: false, complete: function (data) { if (data.responseText !== '{}') { var sieveMailboxPresets = JSON.parse(data.responseText); if (sieveMailboxPresets) { sieve_presetsElem.innerHTML = ''; sieveMailboxPresets.forEach(function (item, index) { var elemID = 'sieve_preset_' + index; sieve_presetsElem.innerHTML += '<li><a href="#" class="small" id="' + elemID + '">' + lang.insert_preset.replace('%s', item.headline) + '</a></li>'; /* we need to define 0-timeout here, to prevent dom not be ready. */ setTimeout(function () { document.getElementById(elemID).addEventListener('click', function (e) { e.preventDefault(); document.querySelector('form[data-id=add_filter] #script_desc').value = item.headline; document.querySelector('form[data-id=add_filter] .script_data').value = item.content; return true; }); }, 0); }); } } } }); }