2012-02-17 77 views
0

使用在asp.net中找到的Pluralsight演示我創建了自動完成文本框。我想將信息放入文本框中,並在文本框下方的表格中查看自動填充建議,而不必按下按鈕。從沒有按鈕的文本框Jquery自動完成表

我在MVC3中編寫我的代碼並使用MSSQL 2008數據庫。

我懷疑我需要以某種方式合併此功能,但我不知道該怎麼

$(document).ready(function() { 
$(":input[data-autocomplete]").each(function() { 
    $(this).autocomplete({ source: $(this).attr("data-autocomplete") }); 
}); 

$("searchForm").each(function() { 
    $.getJSON($(this).attr("action"), 
     $(this).serialize(), 
     function(data) { 
      var result = $("#searchTemplate").tmpl(data); 
      $("searchResults").empty() 
       .append(result); 
     } 
    ); 
    return false; 
}); }) 

任何幫助將是非常讚賞。

回答

1

你的問題很不清楚。看不到第一個和第二個腳本之間的任何關係。更何況第二個似乎是錯誤的,因爲沒有<searchForm>有效的DOM元素,這是你似乎正在循環。

看起來您嘗試通過提交包含自動填充文本框的表單進行選擇時自動執行搜索。如果你想這種形式來執行AJAX提交定期回傳,而不是你可以使用一個Ajax.BeginForm而不是常規Html.BeginForm的

$(":input[data-autocomplete]").each(function() { 
    $(this).autocomplete({ 
     source: $(this).attr("data-autocomplete"), 
     select: function(event, ui) { 
      // a selection was made, here you could trigger the submission of the form 
      // as if a submit button was pressed 
      $(this).closest('form').trigger('submit'); 
     } 
    }); 
}); 

當然:對於這一點,你可以使用select事件。