Я полагаю, что вы описываете именно то, для чего предназначена идея кодирования в стиле «одностраничного приложения» с Javascript - модификация страницы с помощью логики без необходимости выполнения запроса к серверу. Т.е., вы хотите подать «заявку». Хотя и простой.
Я рекомендую обратить внимание на «обработчики событий», в частности обработчик click
.
Итак, если у вас был html, который выглядел следующим образом: (украденный с MDN radio page)
<form id="radio_form">
<p>Please select your preferred contact method:</p>
<div>
<input type="radio" id="contactChoice1"
name="contact" value="email">
<label for="contactChoice1">Email</label>
<input type="radio" id="contactChoice2"
name="contact" value="phone">
<label for="contactChoice2">Phone</label>
<input type="radio" id="contactChoice3"
name="contact" value="mail">
<label for="contactChoice3">Mail</label>
</div>
</form>
Тогда вы можете получить код, который будет выглядеть как
var radio = document.getElementById('radio_form');
radio.onclick = changeTable;
function changeTable(e){
// Do logic here to change table
}
Идея состоит в том, что ваша страница «ждет», пока форма не будет «нажата» (вы также можете взглянуть на onChange
), и при щелчке по ней вызывается функция, которая выполняет дальнейшую логику.
См. здесь , чтобы выяснить, как получить значение выбранного радио.
См. здесь для использования javascript для вставки строки в таблицу (что вы, возможно, захотите сделать в вашей функции changeTable).
РЕДАКТИРОВАТЬ: Одна «ошибка», на которую стоит обратить внимание, это если ваш скрипт работает, когда страница действительно загружена. Это может быть проблемой, если ваша страница загружается асинхронно (сомнительно). На всякий случай посмотрите также на некоторую реализацию document.ready
: Чистый JavaScript-эквивалент jQuery's $ .ready () - как вызвать функцию, когда страница / DOM готова для нее