Я стараюсь установить небольшой срок, чтобы не вызывать раздражение у ПМа.
<script src="index.js"></script> <!-- подключаем js файл -->
<form>
<!-- Какая-то формочка в html -->
<input type="button" onclick="my_fun()" value="Кнопка, которая вызывает функцию из подключенного js-файла"/>
<!-- до вызова функции js-файл должен быть загружен в окружении браузера, это можно посмотреть через F12, раздел Sources. -->
</form>
function my_fun()
{
alert('Это код выполнен, и он на JS!');
}
<script src="index.js"></script> <!-- подключаем js файл -->
<form>
<!-- Какая-то формочка в html -->
</form>
<script>
// Дергаем вашу функцию!
my_fun();
</script>
SELECT DISTINCT r.*, k.tags FROM ratings as r
LEFT JOIN keywords as k ON r.movieid = k.movieid
SELECT DISTINCT * FROM ratings LEFT JOIN keywords USING (movieid)
и с каждым input работать отдельно. Вероятно, такая форма будет делать ajax запрос на сервер.
При составлении такого запроса все равно будет составляться отдельный объект FormData, который не зависит от верстки.
Аналогичным методом можно получить доступ к контейнеру с тегом form.
Хотя, лучше уточнить у программистов, которые будут добавлять логику в ваш макет.