Model中的Typeahead返回空值以形成输入字段

时间:2016-05-13 15:47:06

标签: javascript php typeahead.js

我用按钮创建一个表。当用户切换按钮时,它将打开一个Bootstrap-Modal。 Modal内部是一个表格,是一个打字的选择字段。该列表有效,所有项目均可选择。

我的问题: 如果我选择它在帖子上显示的项目,则返回值(PHP $ _POST)为空。

我的js代码

$(document).ready(function () {
$('.typeahead').typeahead({
    source: function (query, process) {
        $.ajax({
            url: '/testPost',
            type: 'POST',
            dataType: 'JSON',
            //data: 'query=' + query,
            data: 'query=' + $('#contactName').val(),

            success: function(data)
            {
                var results = data.map(function(item) {
                    //var someItem = { contactname: item.ContactName, telephone: item.Telephone, email: item.Email };
                    var someItem = { contactname: item.ContactName, id: item.id };
                    console.log(item);
                    return JSON.stringify(someItem.contactname);
                });

                return process(results);
            }
        });
    },
    minLength: 1,
    updater: function(item) {
        // This may need some tweaks as it has not been tested
        var obj = JSON.parse(item);
        return item;
    }
});

});

php json

    $return_arr[] = array("id" => "1", "ContactName" => "Dooome");
$return_arr[] = array("id" => "2", "ContactName" => "Caa");
$return_arr[] = array("id" => "3", "ContactName" => "Veee");
$return_arr[] = array("id" => "4", "ContactName" => "Moo");
$return_arr[] = array("id" => "5", "ContactName" => "Reee");
#$return_arr[] = array("value" => "Dooome");

header("Content-Type: application/json");
print_r(json_encode($return_arr));

1 个答案:

答案 0 :(得分:0)

如果您希望输入预先输入.val()不起作用,您可以使用$('#contactName').typeahead('val')获得价值,这样您就可以获得价值  用于发送Post Ajax数据的输入

查看the documentation of typeahead