2014-03-31 13 views
-1

我需要檢查在控件中輸入的值(例如電子郵件),並提醒用戶數據庫中是否存在此值。是否有可能在用戶嘗試刪除控件時完成,或者我需要在提交表單時執行此操作?如何防止用戶在輸入的值無效時離開控件?

+1

我認爲現代用戶體驗最佳實踐建議你應該讓用戶離開現場(這樣做不會讓人感到憤怒),但是用明確的「OK/NotOK」消息標記字段。 – Pointy

+0

@點我認爲你是對的。感謝您對最佳做法的建議+1 –

回答

0

不要。別。別。只是不要這樣做。 如前所述,並將該字段標記爲無效。

但如果你真的需要做這種奇怪的行爲,你可以處理模糊事件:

$("#MyId").on("blur", function(e) { 

    if (shouldPreventMoveNext()) 
    { 
     e.stopPropagation(); 
     e.stopImmediatePropagation(); 
     e.preventDefault(); 
     jQuery(this).focus(); 
     return false; 
    } 

}); 

模糊事件,當用戶離開控制被激發。

+0

然後我會在提交表單上執行此操作,因爲它似乎是網絡上的常態。但是,謝謝你的好例子。有很多有用的信息。 –

+0

我也看到,模糊事件可以用來設置默認值,當用戶不輸入任何或清除現有的。 –

+0

這是一個更好的主意。你可以使用'$(「#form」)。on(「submit」,function(e){})'來捕獲表單提交,並避免提交,執行aditional任務,甚至準備一些ajax調用,而不是默認的提交行爲。你爲什麼不玩jQuery.Validate? –

相關問題