我正在學習jquery和它的真棒!它很容易做複雜的東西,但我不確定如果自動完成失敗,如何防止某人提交表單(或警告他們)。如果沒有自動完成表單,是否有辦法阻止提交表單?
我在我的網站上有一個表格,它可以自動填充來自我的數據庫的現有數據,並在他們提交時提供該條目的信息。如果他們添加的東西不在數據庫中,那麼我的服務器會將他們退回到表單頁面並讓他們知道錯誤,但我想在填寫表單時提醒他們(在他們提交表單之前) 。長篇小說,我知道如何檢測字段中的變化,但是當字段不在數據庫中時,如何檢測(並阻止提交表單)?我正在考慮的兩種情況是,如果存在自動完成庫存(「ibm」),並且用戶要麼在「完成」之前鍵入「ib」(完成之前)或「自動完成」之後鍵入「ibmm」。檢測jQuery的ISH簡單的方法,如果一個領域沒有被完全自動完成解決
任何建議
更新:?? 按照要求,這裏是我的自動完成代碼(基本上只需要在搜索框中輸入值,提交到一個名爲'autocomplete'的網址):
<script>
$(function() {
var cache = {},
lastXhr;
$("#global-search-field").autocomplete({
minLength: 2,
source: function(request, response) {
$(".message").empty()
var term = request.term;
if (term in cache) {
response(cache[ term ]);
return;
}
lastXhr = $.getJSON("autocomplete", request, function(data, status, xhr) {
cache[ term ] = data;
if (xhr === lastXhr) {
response(data);
if (data == 'no results found'){
//alert(data);
//$(".message").empty().append("not found!");
}
}
});
}
});
});
</script>
表單不是沒有*可見* **「提交」**按鈕的表單。相反,如果出現'不活躍',你知道......灰色字體的顏色和那些東西... – 2012-07-20 00:31:58
你可以使用jQuery進行表單驗證(檢查是否需要的字段中有一些相關內容),但是就我而言, m知道你不能使用它從服務器發送和接收。不要把我的話當成福音,我從我自己對jQuery的研究和我對它的研究中得出這個推論。 – Dom 2012-07-20 00:33:32
附加問題:您如何獲得自動填充的值?通過ajax或靜態數組傳遞給自動完成功能? – 2012-07-20 00:41:33