从tokeninput.js提交数据

时间:2016-02-02 22:05:17

标签: javascript php jquery jquery-tokeninput

我最近在我的一个网站上设置了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"]);

1 个答案:

答案 0 :(得分:0)

到目前为止,我正在做的是解决这个问题。

当用户从列表中添加和删除项目时,我使用onAdd和onDelete函数将id添加到隐藏字段中。一旦填充了所有ID,我可以使用php中的标准$ _post []命令读取值

以下是可能存在相同问题的其他任何人的代码示例

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); 
        }       

    });         
});