Я недавно настроил https://github.com/loopj/jquery-tokeninput на одном из моих веб-сайтов.
Я пытаюсь разрешить пользователям сайтов создавать список из ряда опций, которые я им предоставляю. Как только пользователь завершит выбор всех своих элементов и нажмет кнопку «Отправить», я не получу никаких значений назад.
Может кто-нибудь, дайте мне знать, что я делаю не так ..
HTML
<div>
<input type="text" id="demo-input" name="name" />
<input type="Submit" value="Submit" />
</div>
JS
<script type="text/javascript">
$(document).ready(function() {
$("#demo-input").tokenInput("json.php");
});
</script>
PHP
$name =$_POST["name"]);
Это то, что я делаю до сих пор, чтобы обойти проблему ..
Поскольку пользователь добавляет и удаляет элементы из списка, я использую функции onAdd и onDelete для добавления идентификаторов в скрытое поле. После того, как все идентификаторы заполнены, я могу использовать стандартную команду $ _post [] в php для чтения значений
Вот пример кода для тех, кто может иметь такую же проблему
HTML
<div>
<input type="text" id="list_of_items" name="list_of_items" />
<input type="hidden" id="list_of_items_by_id" name="list_of_items_by_id" />
<input type="Submit" value="Submit" />
</div>
JS
$(document).ready(function(){
var field_value = $("#list_of_items_by_id").val();
$("#list_of_items").tokenInput("json.php",{
hintText: "Start typing the name of the item",
tokenValue:"item_id",
onAdd: function (item) {
var field_value = $('#list_of_items_by_id').val();
if (field_value != ""){
$('#list_of_items_by_id').val(field_value+","+ item.item_id);
}else{
$('#list_of_items_by_id').val(item.user_id);
}
},
onDelete: function (item) {
var field_value = $('#list_of_items_by_id').val().replace(',,',',').replace(item.user_id,'');
$('#list_of_items_by_id').val(field_value);
}
});
});
Других решений пока нет …