Я использую jQuery UI Selectmenu по Filamentgroup для выбора вопросов из базы данных. Сценарий в основном представляет собой причудливое меню сверления, используя список и раскрывающуюся функцию. После нескольких ухищрений (скрипт бета-версии) он работает очень хорошо, однако я использую LOT дублированных данных, что делает скрипт медленным и вялым. Основная причина этого заключается в том, что я использую развернутое меню, в то время как я должен использовать прикованное меню выбора.Создание огромного списка с повторяющимися данными быстрее с помощью AJAX
Но я бы не стал публиковать здесь, если бы я не предпочел сверлить. Он сохраняет процесс очень интуитивно понятным и простым для будущих посетителей, и ему нужен только один блок выбора вместо нескольких.
В сценарии пользователь «сверлит вниз» через 4 категории, все из которых содержат несколько параметров. В итоге появляется список вопросов. Но вопросы ВСЕГДА то же самое. До сих пор пример, пользователь идет корыто этот список:
Пол (2 варианта)> Возраст (3 варианта)> Образование (3 варианта)> Категория (6 вариантов)> Список вопросов
Но не имеет значения, выбирает ли пользователь мужской или женский, низкий, средний, высокий и т. д. Вопросы остаются неизменными. И поскольку это список, у меня есть гигантский список из более чем 10.000 строк.
Идеально было бы, если содержимое особенно последнего списка будет загружаться всякий раз, когда он будет выбран, а не когда страница загружается. Я читал что-то подобное с Джоном. Я читал весь день в этом, но с моим ограниченным знанием javascript и jquery я никуда не денусь.
Может ли кто-нибудь дать предложение о том, что я могу сделать? Я знаю, что никто не собирается делать этот сценарий для меня, но, возможно, для существующего скрипта требуется только несколько настроек, которые легко реализовать для экспертов. Или, возможно, есть возможность просто «добавить» что-то в список, или, может быть, вы, ребята, знаете похожий скрипт с уже встроенной функцией.
Список построен в функции PHP. Я очень хорошо знаю PHP, поэтому, если есть что-то, что я могу использовать там, это тоже вариант. Например, загружать/выполнять только функцию, когда она выбрана в списке.
Update:
- JSfiddle
- Script examples (без Ajax)
Сценарий Я использую:
jQuery.ajax ({ URL: "questions.php", cache: false }). Сделано (функция (html) { jQuery (". Результат ") добавить (HTML). });
Вопросы.php загружает вопросы из базы данных MySQL, а echo - как неупорядоченный список. Вопросы появляются в любом месте страницы, если я не буду использовать их в самом списке, где они должны быть.
Ajax был бы вариантом, хотя я не настолько хорош в JS. –
Да, ключевое слово действительно асинхронно, но как его реализовать, для меня это другая история. – mat