Может ли php обнаруживать, включен ли javascript или нет?

У меня есть страница, которая создавалась динамически.

Теперь я хочу добавить функцию ajax, поэтому я хочу добавить оператор if для изменения выходов.

if(js is on){ ... ... echo "js is on"; }else{ ... echo "js is off"; } 

Есть ли способ обнаружить, что js включен с php?

Или я могу удалить / скрыть его jQuery?

Заранее спасибо.

Solutions Collecting From Web of "Может ли php обнаруживать, включен ли javascript или нет?"

PHP выполняется до того, как произойдет какое-либо действие браузера, поэтому нет, PHP не может напрямую определить, включен или выключен Javascript.

Вы должны предоставить немного больше информации о том, что вы делаете для нас, чтобы найти обходной путь. В PHP можно определить, был ли вызов выполнен с помощью AJAX или не используется глобальная переменная $_SERVER['X_HTTP_REQUESTED_WITH'] которую jQuery будет устанавливать автоматически.

Если вам нужно показать элемент, когда включен Javascript, вы можете сначала скрыть элемент с помощью CSS и включить его с помощью Javascript / jQuery. То же самое происходит и наоборот.

Вы не можете сделать это на PHP, потому что страница отображается в момент, когда вы знаете. И, кроме какого-то сумасшедшего сценария переадресации, лучше всего использовать CSS + JS, чтобы показать / скрыть то, что вам нужно:

То, что я обычно делаю (и ваш пробег может варьироваться в зависимости от того, что вам нужно показать / скрыть):

 <html> <head> ... other stuff here, title, meta, etc ... <script type="text/javascript">document.documentElement.className += " js"</script> ... everything else </head> 

Затем вы можете использовать CSS, чтобы скрыть / показать на основе, если JavaScript включен / отключен:

 /* Hide by default, show if JS is enabled */ #needsJS { display: none } .js #needsJS { display: block } /* Show by default, hide if JS is enabled */ .js #fallback { display: none } 

Он не может сделать это напрямую, и обходные пути для него обычно неудобны и расточительны.

Вместо этого используйте прогрессивную технику улучшения.

Просто сделайте сайт работать без JS. Если все в порядке, вы можете подключить JS-функцию, например, jQuery.

Это также называется ненавязчивым JavaScript .

Таким образом, вы в основном не различаете клиент с JS и клиентом без JS. Вы не предоставляете разные выходные данные. Вы настроили свой HTML-код таким образом, чтобы вы могли легко идентифицировать элементы, которые должны были бы использовать функциональность JS в этой программе программным способом.

Этот способ еще проще для вас, так как вам не нужно думать о разных выходах, и это гарантирует, что сайт также работает без JS.