2017-05-31 66 views
0

我需要添加一個自定義組件(footable)內的html div元素。 由於組件是在運行時構建的,因此我無法在html中的任何位置使用組合,因此我必須使用jQuery添加我的元素。添加動態html而不使用撰寫裏面的視圖

任何想法如何添加下面並綁定到ViewModel的方法? footable事件:

'postinit.ft.table':function(e,ft){ 
    $('.footable-filtering .form-inline').append('<div class="form-group"><a 
    href="#" click.delegate="refreshNow()" class="btn btn-primary"><i class="fa 
fa-refresh"></i></a></div>'); 
} 

回答

1

我可能會來它以不同的方式。我會使用jQuery的.on處理程序將偵聽器附加到.footable-filtering元素,看起來好像從一開始就存在;

'postinit.ft.table':function(e,ft){ 
    $('.footable-filtering .form-inline').append('<div class="form-group"><a 
     href="#" click.delegate="refreshNow()" class="btn btn-primary refreshButton"><i 
     class="fa fa-refresh"></i></a></div>'); 
} 

$('.footable-filtering').on('click', '.refreshButton', (e) => { 
    e.preventDefault(); 
    this.refreshNow(); 
} 

這是未經測試 - 但應該工作。

淡香水 - 這也是值得一說的是,在這種方式結合Aurelia大街和jQuery並不理想 - 但正如你使用jQuery反正創造它的使用是差強人意的元素。

+1

感謝它的工作! 至於jQuery和dAurelia,我同意,但我不打擾現在創建一個aurelia橋插件。 –