Json输入而不是自动填充

时间:2016-10-21 08:30:56

标签: php jquery json

$('#lev_nr').on('input', {
source: function(request, response) {
$.ajax({
url : 'pallavvikelse/jsonData',
        dataType: "json",
        data: {
        name_startsWith: request.term,
                type: 'lev_table',
                row_num : 1
        },
        success: function(data) {
        response($.map(data, function(item) {
        var code = item.split("|");
                return {
                label: code[0],
                        value: code[0],
                        data : item
                }
        }));
        }
});
},
        autoFocus: true,
        minLength: 1,
        select: function(event, ui) {
        var names = ui.item.data.split("|");
                $('#lev_namn').val(names[1]);
                var txt = $('#avta').val(names[2]);
                if (txt.val() == "ja"){
        $('#t').hide();

        }

    } }).trigger('input');

有人能看出为什么这不起作用? 我正在尝试将自动填充功能更改为on.input,但我无法将其工作。 当我将第一行更改为$('#leverantors_nr').autocomplete({时,代码可以正常工作 当我删除.trigger('input')

3 个答案:

答案 0 :(得分:0)

$('#lev_nr').on('input', function() {

    $.ajax({
        url: 'pallavvikelse/jsonData',
        data: {
            name_startsWith: this.value,
            type: 'country_table',
            row_num: 1
        }, 
        dataType: 'json',    
        success: function(data) {


             alert(data);
    var names = data.split('|');

 alert(names[0]);

        }
    });



});

我已经设法让它工作到目前为止,但是当我尝试提醒(名字[0])时,我得到任何警报(数据)我什么都没有得到反击..我得到的数据如下:5000950 | TEST | BLABLA 温我试图分裂并再次警惕它的工作

答案 1 :(得分:0)

  $('#leverantors_nr').on('input', function() {

    $.ajax({
        url: 'pallavvikelse/jsonData',
        data: {
            name_startsWith: this.value,
            type: 'country_table',
            row_num: 1
        }, 
        dataType: 'json',    
        success: function(data) {

      alert(data.lev_namn);

        }
    });


});

问题解决了: 我更改了数据库,因此输出如下数组:

  $arr['lev_nr'] = $row->lev_nr; 
  $arr['lev_namn'] = $row->lev_namn;

答案 2 :(得分:0)