I need to add an HTML anchor in my code. The fist code works fine but does not include the anchor tag that I need. But the second one fails:
This works fine, does not include :
<script type='text/javascript'>//<![CDATA[
$('#Quantity').keyup(function () {
var textualValue = $(this).val();
var numericValue = parseInt(textualValue, 10);
if (!isNaN(numericValue)) {
modifyDOMWithNumber(numericValue);
} else {
modifyDOMWithNumber(0);
}
});
function modifyDOMWithNumber(number) {
var ul = $('ul#ListToAlter').empty();
var item;
for (var i = 1; i <= number; i++) {
item = $("<li>");
if (i == 1) {
item.text("Options for your 1st $Name");
}else if(i == 2) {
item.text("Options for your 2nd $Name");
}else if(i == 3) {
item.text("Options for your 3rd $Name");
} else {
item.text("Options for your number " + i + "th $Name");
}
ul.append(item);
}
}
//]]>
</script>
This fails, does include :
<script type='text/javascript'>//<![CDATA[
$('#Quantity').keyup(function () {
var textualValue = $(this).val();
var numericValue = parseInt(textualValue, 10);
if (!isNaN(numericValue)) {
modifyDOMWithNumber(numericValue);
} else {
modifyDOMWithNumber(0);
}
});
function modifyDOMWithNumber(number) {
var ul = $('ul#ListToAlter').empty();
var item;
for (var i = 1; i <= number; i++) {
item = $("<li>");
if (i == 1) {
item.html("<a>Options for your 1st $Name</a>");
}else if(i == 2) {
item.html("<a>Options for your 2nd $Name</a>");
}else if(i == 3) {
item.html("<a>Options for your 3rd $Name</a>");
} else {
item.html("<a>Options for your number " + i + "th $Name</a>");
}
ul.append(item);
}
}
//]]>
</script>
.textdocumentation: "We need to be aware that this method escapes the string provided as necessary so that it will render correctly in HTML. To do so, it calls the DOM method .createTextNode(), does not interpret the string as HTML." The following example clearly shows that you cannot use.textto set HTML. Always read the documentation first!