У меня проблема с использованием javascript в статье joomla. При нажатии кнопки отправки перезагружается вся страница, а не выполняется java-скрипт. Код работал при загрузке в файл index.php шаблона joomla, но не работает при загрузке из одной статьи по какой-то причине
<div class = "top"><form>
<p style = "text-align: right;"><label for = "power">Power <input id = "power" type = "number" name = "power" /> mW</label></p>
<p style = "text-align: right;"><input class = "submit" type = "submit" value = "Calculate" /></p>
</form></div>Сценарий java
<script type = "text/javascript">
/*jslint node: true */
/*global $, jQuery, alert*/
"use strict";
var $jQ = jQuery.noConflict();
alert(location.hostname);
jQuery(document).ready(function () {
$jQ("form").submit(function (event) {
alert("Calculate");
event.preventDefault();
});
});
</script>
Может ли кто-нибудь помочь мне, где это не так?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если это работает, когда вы добавляете код вручную в файл PHP, но не при размещении в статье, то ваш редактор, вероятно, удаляет или изменяет код. Проверьте настройки вашего редактора на что-то вроде «Разрешить JS» (где этот параметр зависит от вашего редактора). Или попробуйте установить для редактора значение «none» и посмотрите, работает ли это.
выглядит нормально, попробуйте отладить вызов ready (), поместив вызов alert() (или лучше console.info()) внутри в код и, возможно, заменив событие готовности на jQuery:
<script type = "text/javascript">
"use strict";
console.info("script is running");
jQuery(function () {
console.info("hooking into submit");
jQuery("form").submit(function (event) {
event.preventDefault();
console.info("alternate submit");
});
});
</script>
Затем откройте консоль, чтобы увидеть журналы (ключ F12), это должно, по крайней мере, дать вам несколько указателей на то, где он застревает.
Первое предупреждение (location.hostname); срабатывает при загрузке страницы, и код сценария присутствует в исходном коде реальной веб-страницы, когда я ее проверяю.