I have homework and this task keeps making me problems, I'm still noob in JavaScript, and if I ask stupid questions I'm sorry... I have input fields and when i submit them they should appear in div below them and it's working fine for me, after that I need to submit another time with different values, but not changing old one, new ones should be on top of old ones, like whole div on top of old div if u understand what I mean by that... that part I just can't get to work, to be honest I have no idea how should I do that... I know it would be easier with jQuery but condition is not to use it Here is my code (every help is appreciated, ty very much!):
function validate() {
var title = document.getElementById('news-title').value;
var errortitle = '';
var error = 0;
title = title.trim();
if (title.length === 0) {
errortitle += 'Title is required. <br>';
error++;
}
if (title.length < 3 || title.length > 50) {
errortitle += 'Title must be between 3 and 50 characters.';
error++;
}
if (error === 0) {
document.getElementById('error-title').innerText = '';
document.getElementById('news-title').style.borderColor = "black";
} else {
document.getElementById('error-title').innerHTML = errortitle;
document.getElementById('news-title').style.borderColor = "red";
}
//title end
//news start
var news = document.getElementById('news-text').value;
var errornews = '';
var greska = 0;
news = news.trim();
if (news.length === 0) {
errornews += 'News text is required. <br>';
greska++;
}
if (news.length < 10 || title.length > 250) {
errornews += 'News text must be between 10 and 250 characters.';
greska++;
}
if (greska === 0) {
document.getElementById('error-text').innerText = '';
document.getElementById('news-text').style.borderColor = "black";
} else {
document.getElementById('error-text').innerHTML = errornews;
document.getElementById('news-text').style.borderColor = "red";
}
//news end
//link start
var url = document.getElementById('news-link').value;
var errorlink = '';
var greskalink = 0;
url = url.trim();
if (url.length === 0) {
errorlink += 'News link is required. <br>';
greskalink++;
}
if (url.length < 10 || url.length > 250) {
errorlink += 'News link must have at least 10 characters. <br>';
greskalink++;
}
if (url.search("http") > 0) {
errorlink += 'News link must start with https://';
greskalink++;
}
if (greskalink === 0) {
document.getElementById('error-link').innerText = '';
document.getElementById('news-link').style.borderColor = "black";
} else {
document.getElementById('error-link').innerHTML = errorlink;
document.getElementById('news-link').style.borderColor = "red";
}
//link ends
//author starts
var author = document.getElementById('news-author').value;
var errorauthor = '';
var greskaAuthor = 0;
author = author.trim();
if (author.length === 0) {
greskaAuthor;
} else if (author.length < 3 || author.length > 20) {
errorauthor += 'Author (if entered) must have between 3 and 20 characters.';
greskaAuthor++;
}
if (greskaAuthor === 0) {
document.getElementById('error-author').innerText = '';
document.getElementById('news-author').style.borderColor = "black";
} else {
document.getElementById('error-author').innerHTML = errorauthor;
document.getElementById('news-author').style.borderColor = "red";
}
//author ends
var email = document.getElementById('email').value;
var errormail = '';
var greskamail = 0;
email = email.trim();
if (email.length === 0) {
errormail += 'Email is required. \n';
greskamail++;
}
if (email.length < 5) {
errormail += 'Email must have at least 5 characters.\n';
greskamail++;
}
if (email.search('@') < 2) {
errormail += "Please enter valid email.";
greskamail++;
}
if (greskamail === 0) {
document.getElementById('error-email').innerText = '';
document.getElementById('email').style.borderColor = "black";
} else {
document.getElementById('error-email').innerText = errormail;
document.getElementById('email').style.borderColor = "red";
}
if (greskamail > 0 || greskaAuthor > 0 || greskalink > 0 || greska > 0 || error > 0) {
document.getElementById('content').innerHTML = '';
} else {
document.getElementById('email-autora').innerHTML = email;
document.getElementById('opis-vesti').innerHTML = news;
document.getElementById('autor').innerHTML = author;
document.getElementById('link-do-vesti').href = url;
document.getElementById('link-do-vesti').innerHTML = url;
document.getElementById('naslov').innerHTML = title;
}
}
<div class="container clearfix">
<label>News title</label><br>
<input type="text" name="news-title" value="" id="news-title">
<p id="error-title" style='color: red;'></p>
<label>News text</label><br>
<textarea name="news-text" rows="8" cols="80" id="news-text"></textarea>
<p id="error-text" style='color: red;'></p>
<label>News link</label><br>
<input type="text" name="news-link" value="" id="news-link">
<p id="error-link" style='color: red;'></p>
<label>Author</label><br>
<input type="text" name="news-author" value="" id="news-author">
<p id="error-author" style='color: red;'></p>
<label>Author Email</label><br>
<input type="text" name="email" value="" id="email">
<p id="error-email" style='color: red;'></p>
<button id="enter" onclick="validate()">Display</button>
<div id="content">
<h1 id="naslov"></h1>
<p id="opis-vesti"></p>
<a href="" id="link-do-vesti"></a>
<p id='email-autora'></p>
<h4 id='autor'></h4>
<hr>
</div>
</div>