У меня есть список облаков тегов
<ul #id = "tag-cloud-list"> <li class = "items">Music</li> <li class = "items">Lion</li> <li class = "items">Dwarf</li< </ul>
Это было создано JQuery. Элементы здесь – теги, которые я буду вставлять в базу данных. Теперь мой вопрос: можно ли получить все элементы <li>
внутри ul? и помещать их в массив PHP? потому что каждый из этих тегов будет вставлен в базу данных. если я не могу получить элементы li, используя php, то как бы вставить эти элементы списка в базу данных? потому что я нуждался в них, поскольку это тег для определенного элемента или сообщения
Вы должны сделать вызов AJAX:
var lis = new Array(); // Iterate through the <li> items $("#tag-cloud-list").children("li").each(function() { lis.push($(this).text()); }); // Make AJAX call and set data to something like "Music::Lion::Dwarf" $.ajax({ url: "dostuff.php", type: "POST", data: { items: lis.join("::") }, success: function() { alert("OK"); } });
Затем в PHP-скрипте используйте
$lis = $_POST['items']; $liarray = explode("::", $lis);
для извлечения массива элементов li
Вы не можете получить их на PHP, если вы каким-либо образом не отправите данные на сервер. PHP выполняется на сервере, если это происходит через jquery, тогда PHP ничего не знает об этом.
Вам нужно будет либо использовать javascript, чтобы получить всю информацию и отправить ее обратно на сервер, либо вам нужно отправить всю HTML-страницу страницы (как-то) обратно на сервер, на которую будет обращать внимание PHP. Я предлагаю первый вариант.
Изменить: я не flash-hot с javascript, просто используйте некоторые базовые функции, но вы можете написать событие в <div>
или где данные вступают. Функция найдет, сколько <li>
в <ul id="tag-cloud-list">
выведет их в массив и отправит их на сервер PHP по форме или по запросу ajax.
Извините, что я не могу много помочь с кодом js.
Вам нужно получить все элементы в ul с помощью функции .find () из JQuery и сделать POST с ajax и обработать информацию