I am trying to loop through html content, for each html has a text input which i want to get the text value and pass it to the html span that also has id replyJail-number of the same with id of replybefore-number
HTML PART
<span id="replyJail-1" class="rep"></span>
<input id="replybefore-1" class="brp" type="hidden" value="hello"/>
<span id="replyJail-2" class="rep"></span>
<input id="replybefore-2" class="brp" type="hidden" value="#Bold letter"/>
<span id="replyJail-3" class="rep"></span>
<input id="replybefore-3" class="brp" type="hidden" value="`My code`"/>
Javascript
var x = document.getElementsById(id);
//x[i]
var i;
for (i = 0; i < x.length; i++) {
var n = i++;
var converter1 = Markdown.getSanitizingConverter();
var CODESOFTLAB = new Markdown.Converter(converter1);
var before = document.getElementById("replybefore"+n).value;
var MarckDowPreviewHtml = CODESOFTLAB.makeHtml(before);
document.getElementById("replyJail"+n).innerHTML = MarckDowPreviewHtml;
var a = 10;
}
getElementById--(NotgetElementsByIdas itdoes not exist in JavaScript) returns only single element not collection...You have perfect markup to usegetElementsByClassName/querySelectorAllvar x = document.getElementsById(id);is wrong, the right wayvar x = document.getElementById(id);getElementsByIdisn't a function. It'sgetElementById- no "s".var n = i++;incrementsian exrta time too (so your loop increments in 2s), you should probably usen = i + 1