У меня есть форма с двумя полями (для этого примера), которые я проверяю с помощью JavaScript, и если поля содержат данные, форма будет отправлена, когда пользователь нажмет кнопку «Отправить». Я использую iframe в теге формы для отправки вывода на ту же страницу.
Я бы хотел, чтобы под формой отображалось сообщение «Спасибо за отправку». Мне трудно понять эту часть.
function SubmitRentalForm()
{
var bValid = true;
var sFirst = document.getElementById("fname").value;
var sLast = document.getElementById("lname").value;
if ( (sFirst.trim() == "") || (sLast.trim() == "") )
{
bValid = false;
return bValid;
}
return bValid;
}
<div class = "main">
<form name = "RentalForm" action = "email-rental.php" method = "POST" onsubmit = "return SubmitRentalForm()" target = "myFrame">
<table id = "form_corners_rental" border = "0" cellspacing = "5">
<tr>
<td>First Name</td>
<td><input type = "text" id = "fname" name = "fname" size = "50" maxlength = "60" placeholder = "Enter First Name" onblur = "ValidateField(name)" />
<span id = "errorname" style = "font-size:9px;color:darkred;"></span>
</td>
<td>Last Name</td>
<td><input type = "text" id = "lname" name = "lname" size = "50" maxlength = "60" placeholder = "Enter Last Name" onblur = "ValidateField(name)" /></td>
</tr></table>
<div id = "Msg" style = "display:none">
Thank you for your form submission.
</div>
<br/><br/>
<input id = "submit-btn-rental" type = "submit" value = "Rent Now">
</form>
</div>
<iframe name = "myFrame" width = "1" height = "1" style = "border:none"></iframe>
Я добавил тег div, но не знаю, как это сделать.
Может ли кто-нибудь указать мне правильное направление.
Просто измените стиль div сообщения при отправке формы
function SubmitRentalForm()
{
var msg =document.getElementById("Msg")
var bValid = true;
var sFirst = document.getElementById("fname").value;
var sLast = document.getElementById("lname").value;
if ( (sFirst.trim() == "") || (sLast.trim() == "") )
{
bValid = false;
return bValid;
}
msg.style.display = "inline-block"
return bValid;
}
<div class = "main">
<form name = "RentalForm" action = "email-rental.php" method = "POST" onsubmit = "return SubmitRentalForm()" target = "myFrame">
<table id = "form_corners_rental" border = "0" cellspacing = "5">
<tr>
<td>First Name</td>
<td><input type = "text" id = "fname" name = "fname" size = "50" maxlength = "60" placeholder = "Enter First Name" />
<span id = "errorname" style = "font-size:9px;color:darkred;"></span>
</td>
<td>Last Name</td>
<td><input type = "text" id = "lname" name = "lname" size = "50" maxlength = "60" placeholder = "Enter Last Name" /></td>
</tr></table>
<div id = "Msg" style = "display:none">
Thank you for your form submission.
</div>
<br/><br/>
<input id = "submit-btn-rental" type = "submit" value = "Rent Now">
</form>
</div>
<iframe name = "myFrame" width = "1" height = "1" style = "border:none"></iframe>
Попробуй это
function submitForm() {
if (checkFieldsValidation()) {
document.getElementById("Msg").style.display = "inline-block";
}
}
function checkFieldsValidation() {
var sFirst = document.getElementById("fname").value;
var sLast = document.getElementById("lname").value;
if ( (sFirst.trim() == "") || (sLast.trim() == "") ) {
return false;
}
return true;
}
<div class = "main">
<form name = "RentalForm" action = "email-rental.php" method = "POST" onsubmit = "submitForm()" target = "myFrame">
<table id = "form_corners_rental" border = "0" cellspacing = "5">
<tr>
<td>First Name</td>
<td><input type = "text" id = "fname" name = "fname" size = "50" maxlength = "60" placeholder = "Enter First Name" onblur = "ValidateField(name)" />
<span id = "errorname" style = "font-size:9px;color:darkred;"></span>
</td>
<td>Last Name</td>
<td><input type = "text" id = "lname" name = "lname" size = "50" maxlength = "60" placeholder = "Enter Last Name" onblur = "ValidateField(name)" /></td>
</tr></table>
<div id = "Msg" style = "display:none">
Thank you for your form submission.
</div>
<br/><br/>
<input id = "submit-btn-rental" type = "submit" value = "Rent Now">
</form>
</div>
<iframe name = "myFrame" width = "1" height = "1" style = "border:none"></iframe>
Вы хотите знать, как показать div id = "Msg", или вы спрашиваете, как подождать, чтобы показать div до окончания отправки, или вы спрашиваете, как сделать и то, и другое?