Я считаю это утверждение подозрительным. Я никогда не сталкивался с какими-либо проблемами, включая тег <script>
для jQuery в <head>
документа, как и любой другой тег <script>
. Браузер не может знать ничего о том, что сделал PHP. Я подозреваю, что это просто искажение.
Что касается вашего конкретного кода, то, что вы написали в # 1, совершенно правильно. Передача функции в $(document).ready()
позволяет вам предоставлять код для запуска, когда документ «готов» (то есть: когда сама страница загружена, без необходимости загружать внешние ресурсы, такие как изображения, таблицы стилей и т. Д., Для которых вы не хотите не хочу ждать).
Что касается # 2, эта функция вообще не использует jQuery; он использует только встроенные функции JavaScript. Сказав это, он должен работать правильно, найдя элемент формы с id="tags"
и показывая окно предупреждения, если этот элемент имеет пустой value
. Как вы вызывали эту функцию? В мире jQuery вы бы сделали что-то вроде этого:
$("#id-of-your-form").submit(notEmpty);
Вы также можете переписать функцию notEmpty()
, чтобы использовать jQuery следующим образом:
function notEmpty() {{
var tags = $("#tags").val();
if (tags == '' || tags == null) {
alert('Please enter one or more tags');
return false;
}
return true;
}
Опять же, остальная часть этой функции в настоящее время вообще подключается к jQuery. Это нормально, просто так, как есть.
Наконец, # 3 не имеет отношения к jQuery, поскольку его обработка происходит в PHP, о котором JavaScript до сих пор не знает.