簡體   English   中英

當我在 typeahead 中選擇一個元素時如何創建一個 div?

[英]How do i create a div when i select an element in typeahead?

這是我的功能:

$('input.typeahead').bind('typeahead:selected', function (obj, datum, name){
     alert(JSON.stringify(obj)); // object
     // outputs, e.g., {"type":"typeahead:selected","timeStamp":1371822938628,"jQuery19105037956037711017":true,"isTrigger":true,"namespace":"","namespace_re":null,"target":{"jQuery19105037956037711017":46},"delegateTarget":{"jQuery19105037956037711017":46},"currentTarget":
     alert(JSON.stringify(datum)); // contains datum value, tokens and custom fields
     // outputs, e.g., {"redirect_url":"http://localhost/test/topic/test_topic","image_url":"http://localhost/test/upload/images/t_FWnYhhqd.jpg","description":"A test description","value":"A test value","tokens":["A","test","value"]}
     // in this case I created custom fields called 'redirect_url', 'image_url', 'description'
     alert(JSON.stringify(name)); // contains dataset name
     // outputs, e.g., "my_dataset"
});

我希望能夠在單擊建議時創建一個 div,但我無法弄清楚。 我怎樣才能做到這一點? 我試圖附加一個 onclick 事件,但它甚至沒有被調用。 任何幫助都非常感謝:)

您可以使用以下語法創建一個div元素並在輸入后注入它:

$('input.typeahead').bind('typeahead:selected', function(obj, datum, name) {

    var $div = $('<div/>', {
        class: 'whatever'
    });

    $div.append('some text');

    //insert after input
    $(this).after($div);

    // or you can inject it into a specific element
    $('#elementId').append($div);
});

暫無
暫無

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

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