J'ai donc ce script qui prend les données d'un formulaire et les ajoute dans un div HTML.
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<head>
<style>
* {
box-sizing: border-box;
}
div {
padding: 10px;
background-color: #f6f6f6;
overflow: hidden;
}
input[type=text],
textarea,
select {
font: 17px Calibri;
width: 100%;
padding: 12px;
border: 1px solid #ccc;
border-radius: 4px;
}
input[type=button] {
font: 17px Calibri;
width: auto;
float: right;
cursor: pointer;
padding: 7px;
}
</style>
</head>
<body>
<div>
<div>
<input type="text" id="txtName" placeholder="Enter your name" />
</div>
<div>
<input type="text" id="txtAge" placeholder="Enter your age" />
</div>
<div>
<input type="text" id="txtEmail" placeholder="Enter your email address" />
</div>
<div>
<select id="selCountry">
<option selected value="">-- Choose the country --</option>
<option value="India">India</option>
<option value="Japan">Japan</option>
<option value="USA">USA</option>
</select>
</div>
<div>
<textarea id="msg" name="msg" placeholder="Write some message ..." style="height:100px"></textarea>
</div>
<div>
<input type="button" id="bt" value="Write" onclick="writeFile()" />
</div>
</div>
<div class="output-area">
<h4>Output</h4>
<div id="output" class="inner">
</div>
</div>
<span></span>
</body>
<script>
let writeFile = () => {
const name = document.getElementById('txtName');
const age = document.getElementById('txtAge');
const email = document.getElementById('txtEmail');
const country = document.getElementById('selCountry');
const msg = document.getElementById('msg');
let data =
'Name: ' + name.value + ' \r\n ' +
'Age: ' + age.value + ' \r\n ' +
'Email: ' + email.value + ' \r\n ' +
'Country: ' + country.value + ' \r\n ' +
'Message: ' + msg.value;
$('#output').append("<br />" + "<br />");
$('#output').append(document.createTextNode(data));
}
</script>
</html>
Mais le problème est que lorsque je remplis les données et que je clique sur Write
il produit toutes les données du formulaire sur une seule ligne. (Nom : x Age : 4 Email : y Pays : Japon Message : z)
Et je veux que ce soit comme ça,
Name: x
Age: 4
Email: y
Country: Japan
Message: z
Name: x
Age: 42
Email: y
Country: Japan
Message: zd ....
J'ai donc essayé de créer une nouvelle ligne ( \n ) en utilisant le javascript mais il semble que cela ne l'affecte pas.
C'est ce que j'ai essayé.
'Name: ' + name.value + ' \r\n ' + '\n' +
'Age: ' + age.value + ' \r\n ' + '\n' +
'Email: ' + email.value + ' \r\n ' + '\n' +
'Country: ' + country.value + ' \r\n ' + '\n' +
'Message: ' + msg.value;
Alors quel est le problème ici. Toute aide serait très appréciée. Merci.