JQuery внутри функции PHP - числовой формат

Я пытаюсь запустить код javascript / jquery внутри функции PHP в wordpress. На самом деле я нашел этот код по этой ссылке: http://jsfiddle.net/fXrv2/

Как видите, работает отлично. Но кажется, что в моем последнем коде ниже чего-то не хватает, потому что текстовое поле не может автоматически заполнить числовой формат.

Есть идеи, почему это не работает?

    <?php

    function teste() {
        ?>

        <script type = "text/javascript">
            $('input.number').keyup(function(event) {

                // skip for arrow keys
                if (event.which >= 37 && event.which <= 40){
                    event.preventDefault();
                }

                $(this).val(function(index, value) {
                    return value
                        .replace(/\D/g, "")
                        .replace(/([0-9])([0-9]{2})$/, '$1.$2')
                        .replace(/\B(?=(\d{3})+(?!\d)\.?)/g, ",")
                        ;
                });
            });
        </script>

        <input type = "text" class = "number">

        <?php
    }
seems that something is missing Вопросы должны содержать четкое изложение проблемы, иначе никто не узнает, в чем заключается ваша проблема.
CertainPerformance 24.05.2018 03:47

PHP является серверным. Javascript (в этой ситуации) - это клиентская сторона. чего вы пытаетесь достичь обе стороны?

Adib Aroui 24.05.2018 03:54

Я создаю функцию PHP с шорткодом. И после этого я добавляю этот шорткод на страницы своего сайта. Это не так? Я новичок в wordpress, извините! @whitelettersinblankpapers

Alonso Requião 24.05.2018 04:02
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
3
72
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Поскольку весь этот JS находится на стороне клиента, вы получите более согласованные результаты, включая этот скрипт, полностью отделенный от вашего PHP. Если в вашей теме уже есть файл JavaScript, вы можете добавить его к нему, или вы можете добавить его в отдельный файл .js и поставить этот файл в очередь с помощью wp_enqueue_scripts ().

Какой бы способ вы ни выбрали, вы захотите вызвать его в document.ready () или при загрузке окна (см. документацию jQuery), чтобы убедиться, что элемент ввода, который вы пытаетесь выбрать, доступен для поиска JS. В скрипте JS, с которым вы связались, он настроен на использование JS onLoad, и это, вероятно, имеет все значение по сравнению с вашим текущим встроенным скриптом.

Спасибо за ответ! Я понимаю вашу точку зрения. Но правильно ли создавать веб-страницу в Wordpress с функцией PHP и шорткодом?

Alonso Requião 24.05.2018 15:26

Шорткоды - хорошее решение, когда вам нужно сделать часть кода доступной для конечного пользователя, который затем может выбрать, где какой элемент / код следует разместить на сайте. Если это так для этой функции, я бы рекомендовал поместить весь код в плагин, а шорткод должен обрабатывать только создание элемента ввода с соответствующим именем класса. Затем в вашем плагине вы можете указать, что JS выберет это имя класса. Это подходящее решение, если ваш конечный пользователь будет знать, что где они хотят, чтобы этот элемент ввода был, но не таким, каким был бы соответствующий html.

Alex 24.05.2018 21:17

Большое вам спасибо за эту помощь! Теперь я это вижу. Но когда вы говорите: «Я бы порекомендовал разместить весь код в плагине», о каком плагине вы говорите? Я создаю веб-сайт из 2 частей: страницы презентации и страницы учетной записи участников. Веб-страница презентации построена только с использованием HTML, но на страницах учетных записей участников я использую эту функцию PHP с короткими кодами. Эта функция PHP имеет доступ к базе данных и HTML-теги. Есть ли в этом какие-то риски?

Alonso Requião 25.05.2018 02:41

Другие вопросы по теме