Autocomplete 在远程查询第二个输入时使用一个Typeahead输入的结果

Autocomplete 在远程查询第二个输入时使用一个Typeahead输入的结果,autocomplete,typeahead.js,Autocomplete,Typeahead.js,我试图在第二个typeahead输入的远程AJAX调用中使用typeahead输入的结果 以下是我目前掌握的情况: var result1 = new Bloodhound({ datumTokenizer : Bloodhound.tokenizers.obj.whitespace('result'), queryTokenizer : Bloodhound.tokenizers.whitespace, limit : 100, remote : {

我试图在第二个typeahead输入的远程AJAX调用中使用typeahead输入的结果

以下是我目前掌握的情况:

var result1 = new Bloodhound({
    datumTokenizer : Bloodhound.tokenizers.obj.whitespace('result'),
    queryTokenizer : Bloodhound.tokenizers.whitespace,
    limit : 100,
    remote : {
        url : 'getResult1.php?q=%QUERY'
    }
});

result1.initialize();

$('#input1').typeahead({
    minLength : 2
}, {
    name : 'result1',
    displayKey : 'result',
    source : result1.ttAdapter()
}
}).on('typeahead:selected typeahead:autocompleted', function($e, datum) {
    $('#input2').typeahead({
        minLength : 1
    }, {
        name : 'result2',
        displayKey : 'value',
        remote: {
           url : 'getResult2.php?q=%QUERY&r=datum['result']'
    }
 }

我缺少什么?

第二个输入似乎没有很好地配置侦探犬对象。一定是这样的:

var result1 = new Bloodhound({
    datumTokenizer : Bloodhound.tokenizers.obj.whitespace('result'),
    queryTokenizer : Bloodhound.tokenizers.whitespace,
    limit : 100,
    remote : {
        url : 'getResult1.php?q=%QUERY'
    }
});

result1.initialize();

$('#input1').typeahead({
    minLength : 2
}, {
    name : 'result1',
    displayKey : 'result',
    source : result1.ttAdapter()
}
}).on('typeahead:selected typeahead:autocompleted', function($e, datum) {
    var result2 = new Bloodhound({
        datumTokenizer : Bloodhound.tokenizers.obj.whitespace('result'),
        queryTokenizer : Bloodhound.tokenizers.whitespace,
        limit:100,
        remote: {
           url : 'getResult2.php?q=%QUERY&r=datum['result']'
       }
    });

    result2.initialize();

    $('#input2').typeahead({
        minLength : 1
    }, {
        name : 'result2',
        displayKey : 'value',
        source: result2.ttAdapter()
    }
 }
这个答案有用吗?