1
我正在使用jQuery(我是jQuery的新手:))發出一些AJAX後臺請求的ASP.NET應用程序。 我的jQuery的代碼如下:
$(document).ready(function() {
$("#ctl00_cphContent_txtOrgName").keypress(function() {
var orgNameLen = $("#ctl00_cphContent_txtOrgName").val().length;
if (orgNameLen <= 4) {
$("#orgNameHints").empty();
$("#orgNameHints").css('display', 'none');
return;
}
$("#orgNameHints").css({ "visibility": "visible" });
$("#orgNameHints").html("Checking...");
var OrgName = $(this).val();
$.get("ProcessOrgName.aspx?n=" + OrgName, function (data) {
$("#orgNameHints").html(data);
$("#orgNameHints").show();
});
});
$("#ctl00_cphContent_txtOrgName").blur(function() {
$("#orgNameHints").empty();
$("#orgNameHints").css({ "visibility": "hidden" });
});
});
和ASP代碼:
<asp:TextBox ID="txtOrgName" runat="server" MaxLength="100"></asp:TextBox>
<div id="orgNameHints" style="border: 1px solid silver; display:none; position:absolute; padding: 5px; background: #EFEFEF; z-index: 100;"></div>
這裏txtOrgName
是用於與背景(就像的提示相同的數據,以檢查現有記錄的文本框在谷歌搜索關鍵字)。 .get()方法將在ProcessOrgName.aspx
處將搜索關鍵字作爲查詢字符串發佈,該查詢返回數據庫中此類現有記錄的列表。
Everyting工作正常,在這裏,但我現在面臨的問題是:
- 按鍵時()事件調用搜索一樣,如果我尋找 計算器將查詢stackoverflo其中w ^缺少。那麼,有沒有辦法獲得準確的結果。
- 當我搜索關鍵字時,它顯示正常,但是當我按退格鍵 來清除我的文本框時,它仍然會顯示相同的結果,直到文本框已清除後我再按下退格鍵兩次。所以, 可以請你給我任何想法,使它不會 顯示結果,以防我按下退格鍵。
- 以show()方式顯示和隱藏名爲
orgNameHints
的div的任何其他方式;和hide();在我的情況下不起作用,我希望它更準確! - 當用戶複製粘貼關鍵字而不是輸入時,會出現一些情況,所以在這種情況下也應該獲得搜索結果。
任何幫助真的很感激。
將一個實際的方法直接綁定到按鍵事件並不是一個好的方法,我建議你在這裏閱讀我的問題的答案 - http:// stackoverflow。com/questions/8627175 /更好的方式來寫這在jQuery –
謝謝@Atif,但這只是一個改善搜索的建議,但實際上並沒有解決問題。我會在那裏提出修正案。請幫我解決實際問題。 – Cyberpks