Я все еще пытаюсь понять, что такое экспресс, поэтому прошу прощения за, возможно, очень очевидный вопрос.
У меня есть две формы ввода, и я хочу обновлять каждую из них при вводе другой. Вот мой index.pug
form(action='/', method='post')
input(name='kms', type='number', placeholder='Kilometers', onkeyup='updateMiles')
input(name='ms', type='text', placeholder='Miles', onkeyup='updateKilometers')
Поэтому, когда я ввожу число в поле ввода километров, поле ввода миль должно автоматически обновляться при каждом нажатии клавиши. Проблема в том, что я не знаю, как обрабатывать это событие onkeyup с помощью экспресса. Я попытался поместить функцию в index.js, но она не работает.
var express = require('express');
var router = express.Router();
...
function updateMiles() {
var input = document.forms[0].kms;
document.forms[0].ms = input/1.609344;
}
...
module.exports = router;
Я получаю Uncaught ReferenceError: updateMiles is not defined at HTMLInputElement.onkeyup
Я не могу найти никаких ссылок на правильный способ справиться с этим. Буду признателен за любую помощь. Спасибо!
Зачем вам нужен экспресс, чтобы сделать это? Вы можете сделать конвертацию прямо там, на стороне «клиента». Express предназначен для серверного JS. Может я что-то пропустил?
Вы должны понимать одну вещь: JavaScript может работать с обеих сторон, да, но вы не можете выполнять манипуляции с DOM в бэкэнде с помощью JS, это работа JS на стороне клиента.
Вы оба правы, конечно. Я просто сделал это более сложным, чем мне нужно было. Спасибо!