2017-04-06 81 views
0

Iam尝试在我的Aurelia应用程序中为jQuery使用Ajax自动完成。我不能访问通过自动完成选择的对象。 这是我的js代码。Aurelia针对jQuery的Ajax自动完成

this.questionPaperLookup = $('#question-paper-list').autocomplete({ 
    lookup: this.questionPaperLookupData, 
    minChars : 0, 
    onSelect: function (suggestion) { 
    this.selectedQuestionPaper = suggestion.data; 
    } 
}); 

这里的IAM设置selectedQuestionPaper基于从自动完成选择。 并试图从HTML访问这个对象是这样的:

<span id = "selected-question-paper" class="auto_text selected_batches"> 
      ${selectedQuestionPaper.name} 
      </span> 

但selectedQuestionPaper对象的名称属性没有在视图中显示。我不知道缺少任何必需的步骤。在此先感谢

回答

0

您必须使用箭头功能有词法this

this.questionPaperLookup = $('#question-paper-list').autocomplete({ 
    lookup: this.questionPaperLookupData, 
    minChars : 0, 
    onSelect: (suggestion) => { 
    this.selectedQuestionPaper = suggestion.data; 
    } 
}); 
+0

问题使用前'this.selectedQuestionPaper = suggestion.data将一个调试器箭头功能 –

+0

后依然存在;'看它是否被击中 –

+0

是的。我可以打印对象属性到控制台likeconsole.log(this.selectedQuestionPaper.name);它打印选定的问题纸张名称 –