簡體   English   中英

Bootstrap Typeahead AJAX

[英]Bootstrap Typeahead AJAX

我在Twitter Bootstrap( https://github.com/biggora/bootstrap-ajax-typeahead )中使用了typeahead的修改版本,該版本簡化了遠程數據的使用。 我遇到的問題是我的AJAX調用網址取決於我選擇輸入中的選擇選項。

var subjectId = $('#chapters-open-subject option:selected').val();      
    $('#chapters-edit-title').typeahead({
        onSelect: function(item){
            $('#chapters-edit-submit').attr('disabled',false).removeClass('btn-default').addClass('btn-primary');
        },
        ajax: {
            url: '/admin/misc/chapters/search/'+subjectId
        },
        displayField: 'naslov'
    });

問題是,即使我更改了選擇框中的選項,AJAX請求中的URL也保持不變,並且沒有相應地更改。 我該如何解決這個問題?

也許可以擺脫像這樣的東西:

var subjectId = $('#chapters-open-subject option:selected').val();

var $typeahead = $('#chapters-edit-title').typeahead({
    onSelect: function(item){
        $('#chapters-edit-submit').attr('disabled',false).removeClass('btn-default').addClass('btn-primary');
    },
    ajax: {
        url: '/admin/misc/chapters/search/' + subjectId
    },
    displayField: 'naslov'
});

$('#chapters-open-subject').on('change', function() {
    subjectId = $(this).val();
    $typeahead.data('typeahead').options.ajax.url = '/admin/misc/chapters/search/' + subjectId;
});

如果那行不通,我建議在GitHub上發布該庫的問題。 設置后,它似乎不具備輕松更改URL的功能。

ajax : 
{
  preDispatch : function() { return { q: $("#subjectId").val() }},
  url: '/admin/misc/chapters/search/'+ ,
  method : 'get',
  displayField : 'naslov',
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM