#javascript #html
Вопрос:
function validate() {
var errMsg = "";
var result = true;
var fname = document.getElementById("fname").value;
if (!fname.match(/^[a-zA-Z] $/)) {
errMsg = "Please enter your first name correctly.n";
result = false;
}
if (errMsg) {
alert(errMsg);
}
if (result) {
function storeBooking(
fname
) {
sessionStorage.fname = fname;
}
function getBooking() {
if (sessionStorage.fname != undefined) {
document.getElementById("confirm_fname").textContent = sessionStorage.fname;
}
}
function prefillcard()
{
document.getElementById("fname").value = sessionStorage.fname;
}
window.addEventListener("DOMContentLoaded", prefillcard);
function init() {
var regForm = document.getElementById("regform");
regForm.onsubmit = validate;
}
<form action="apply.html" method="post" id="regform">
<label for="fname">First Name</label>
<input type="text" id="fname" name="firstname" placeholder="Your name.." required="required" maxlength="25" onkeypress="return (event.charCode > 64 amp;amp; event.charCode < 91) || (event.charCode > 96 amp;amp; event.charCode < 123) || (event.charCode==32)">
<input type="submit" value="Apply">
</form>
Я настроил некоторый код для автоматического заполнения формы, если пользователь уже заполнил форму в том же сеансе браузера, а затем вернулся к форме. Единственная проблема в том, что там есть заполнитель, который вам нужно удалить, прежде чем вводить данные, и я не знаю, как от него избавиться. «Неопределенно» появляется, когда вы заполняете форму в первый раз. Как мне избавиться от этого?
Примечание: нет jQuery или встроенного JavaScript.
Комментарии:
1. Опубликованный вами код не демонстрирует проблему, которую вы указываете. Определение функции
validate
не является правильным. Пожалуйста, исправьте проблему и сделайте код работающим, чтобы мы могли отладить проблему..
Ответ №1:
Для хранения значений в сеансе используйте
window.sessionStorage.setItem("Name", Value));
и для извлечения значения из сеанса используйте
window.sessionStorage.getItem("Name");
Пример кода ниже
function prefillcard() {
if (window.sessionStorage.getItem("fname")) {
var fnm = window.sessionStorage.getItem("fname");
document.getElementById("fname").value = fnm;
}
}
и для установки значения сеанса используйте
var fnm = document.getElementById("fname").value;
window.sessionStorage.setItem("fname", fnm));
Комментарии:
1. Смогли ли вы воспроизвести проблему из фрагмента кода, приведенного в вопросе?