Javascript ответ на той же странице - PullRequest
0 голосов
/ 18 октября 2018

function check(){
    var d = new Date(); 
    var date = d.getDate(); 
    var month = d.getMonth() + 1; 
    var year = d.getFullYear();
    var state = document.form1.state.value;
        
    if(state==1){
        document.getElementById("expDate").innerHTML = (date + 4) + "/" + month + "/" + year; 
    }
    else if(state==2){
        document.getElementById("expDate").innerHTML = (date + 7) + "/" + month + "/" + year;
    }
}
<form name="form1" >
	<table width="20%">
		<tr>
			<td>Select State: </td>
			<td>
				<select name="state">
					<option value=1>CANSAS</option>
					<option value=2>NEW YORK</option>
				</select>
			</td>
		</tr>
		<tr>
			<td>Expected Delivered:</td>
			<td><p id="expDate"></p>
			</td>
		</tr>
			<td>
			</td>
			<td>
				<input type="submit" name="submit" value="submit" onClick="return check()">
			</td>
		</tr>
	</table>
</form>

Я создаю почтовый калькулятор с использованием HTML и JavaScript.Калькулятор рассчитает ожидаемую дату доставки, когда пользователи выберут опцию состояния и отправят.После отправки выбранное значение будет перехвачено JavaScript и использовано для определения того, какая область состояния (юг, запад, остальное).Например: cansas, который находится на западе, продолжительность будет 5 дней.Затем на той же странице ожидаемая дата доставки будет показана после ее вычисления путем добавления 5 с текущей датой.

1 Ответ

0 голосов
/ 19 октября 2018

Вы почти у цели.Ваш код фактически устанавливает innerHTML для «extDate», но после этого он отправляет форму, и значение исчезает при сбросе формы.Единственное, что вам нужно сделать, это предотвратить отправку формы путем возврата false .

function check(e) {
            // e.preventDefault();
            var d = new Date(); 
            var date = d.getDate(); 
            var month = d.getMonth() + 1; 
            var year = d.getFullYear();

            // document.getElementById("date").innerHTML = date + "/" + month + "/" + year;
            var state = document.form1.state.value;

            if (state == 1) {
                document.getElementById("expDate").innerHTML = (date + 4) + "/" + month + "/" + year;
            }
            else if (state == 2) {
                document.getElementById("expDate").innerHTML = (date + 7) + "/" + month + "/" + year;
            }
            return false;
        }

Я проверил следующий код и для 'Нью-Йорк », возвращается Ожидаемый Поставлено:
26/10/2018

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...