Спам-боты атакуют не форму, а скрипт-обработчик. Соответственно все что вы делаете на стороне клиента, в html или js вас не спасет. Нужна валидация на стороне сервера + черные списки ip адресов.
Ну а откуда js скрипту знать что у вас там this? Передаейте функции test параметр this, а уж потом делайте с ним что хотите. <a href="#" onclick="test(this);">блабла</a>
Получится только для статических сайтов. Только захватить освобождающийся домен сложно. После того как срок закончится регистратор обычно регистрирует домен на себя и выставляет его на аукцион. Т.е. как минимум через год домен можно будет зарегистрировать на себя по стандартной цене.