2013-08-07 69 views
1

我正在嘗試創建一個帶有使用自動完成功能的字段的頁面。 第一場 - "ana"工作正常。第二次失敗。我在控制檯中看不到任何錯誤。提示沒有出現。 這裏的片段:自動完成 - 兩個字段

<script src="/inc/jquery-1.8.3.js"></script> 
<script src="/inc/jquery-ui.js"></script> 
<link href="/inc/jquery-ui.css" rel="stylesheet" type="text/css"/> 

<table> 
<tr> 
<td>Ticker:</td><td><input type="text" name="ana" /></td> 
</tr> 
<tr> 
<td>Cmp: </td><td><input type="text" name="sou" /></td> 
</tr> 
</table> 
<div id="result" style="margin-top:25px;"></div> 
<script language="javascript"> 
$(document).ready(function() { 
    ana = [ <% getAna %>]; 
    $("input[name='ana']").autocomplete({ source: ana }); 

    sou = [ <% getSou %>]; 
    $("input[name='sou']").autocomplete({ source: sou}); 

}); 

</script> 

我」線getAnagetSou。這些作品。在這裏,JS/HTML源代碼:

<script language="javascript"> 
$(document).ready(function() { 
    ana = [ "Aar Edw"]; 
    $("input[name='ana']").autocomplete({ source: ana }); 

    sou = [ "A&A Equity Research"]; 
    $("input[name='sou']").autocomplete({ source: sou}); 

}); 

</script> 
+2

做工精細[這裏](http://jsfiddle.net/tTbZy/) – billyonecan

+0

什麼是<% getAna %>? –

+1

請檢查這可能有幫助 http://stackoverflow.com/questions/15978897/jquery-multiple-autocomplete-field –

回答

1

試試這個

$(document).ready(function() { 
     var ana = Array(); 

     $.ajax({ 
      type: "POST", 
      url: "pagename.aspx/GetAna", //GetAna must be public static web method 
      data: "{}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      async: false, 
      success: function (data) { 
       $.map(data.d, function (item) { 
        ana.push(item.name); 
       }) 
      } 
     }); 
     $("input[name='ana']").autocomplete({ source: ana }); 

     var sou = Array(); 
     $.ajax({ 
      type: "POST", 
      url: "pagename.aspx/GetSou", //GetSou must be public static web method 
      data: "{}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      async: false, 
      success: function (data) { 
       $.map(data.d, function (item) { 
        ana.push(item.name); 
       }) 
      } 
     }); 
     $("input[name='sou']").autocomplete({ source: sou }); 

    }); 

在後面的代碼

[WebMethod] 
    public static List<valuepair> GetAna()//example method same method for GetSou 
    { 
     List<valuepair> lstvaluepair = new List<valuepair>(); 
     // ResumeFromBAL objResumeFromBAL = new ResumeFromBAL(); 
     // ResumeFrom objResumeFrom = new ResumeFrom(); 
     DataSet ds = new DataSet();//use your code to get dynamic data 

     // ds = objResumeFromBAL.GetANA(); 

     if (ds.Tables.Count > 0) 
     { 

      foreach (DataRow item in ds.Tables[0].Rows) 
      { 
       lstvaluepair.Add(new valuepair() { name = item["ResumeFromName"].ToString(), value = item["ResumeFromId"].ToString() }); 
      } 

     } 
     return lstvaluepair; 

    } 
    public class valuepair 
    { 
     public string name { get; set; } 
     public string value { get; set; } 
    } 
+0

我寧願使用靜態數組...不幸的是使用asp - classic。 – MaMu