簡體   English   中英

如何從javascript中的動作類獲取ArrayList數據?

[英]How to get ArrayList data from action class inside a javascript?

我很樂意使用jquery autocompleter創建一個自動完成器。 就我而言,我需要從方法中加載一些數據。 該方法(返回列表)具有一個參數,我需要將文本字段輸入作為方法參數傳遞。 這可能嗎? 如果是我該怎么辦?

方法是

public List<Item> getSuggestedData(String def) {
    EntityManager em = getEntityManager();
    try {
        Query q = em.createQuery("select o from Item o WHERE o.itemName like :def");
        q.setParameter("def", def + "%");
        return q.getResultList();
    } finally {
        em.close();
    }
}

index.jsp,

<script>
     $(function() {             

         var availableTags = [/*I need to load data to here*/];
         $( "#tags" ).autocomplete({                         
            source: availableTags
         });
     });
</script>
<div class="ui-widget">            
   <s:textfield id="tags"/> 
</div>

jQuery是客戶端腳本,而Java代碼在服務器端。 您需要從客戶端向服務器發送HTTP請求以獲取標簽列表。 您可以通過AJAX執行此操作。 jQuery對AJAX有很好的支持。

嘗試這個

$.ajax({
  async:settings.Async,url:Url,cache:false,type:'POST',data:$("#tags").val()
 }).done(function (result) {
     $( "#tags" ).autocomplete({                         
        source: result
     });
 });

暫無
暫無

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

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