2014-09-19 102 views
1

我想獲得一個函數來工作,以便當用戶在文本框中輸入一個四字符代碼時,我會得到一個提示(現在!)。jquery textbox字符串長度函數

我使用...

$(window).load(function() { 
$("#textbox").on('input', function() { 
    if ($("#textbox").val().length > 3) { 
     alert("Four characters detected!"); 
    } 
}); 

});

我必須缺少一些東西,因爲警報不會觸發。在的jsfiddle: http://jsfiddle.net/1s8phz4w/

TIA 合資

+2

變化.load()來。就緒() – 2014-09-19 15:40:57

+0

這其中也將工作http://jsfiddle.net/vnodkumar1987/1s8phz4w/2/ – exexzian 2014-09-19 15:42:04

+0

它的工作而不是'window.load'使用'document.ready'請看這裏http://jsfiddle.net/1s8phz4w/1/ – 2014-09-19 15:42:06

回答

0

我認爲'輸入'事件不是你正在尋找的。

嘗試 '變' 或 'KEYUP':

$(document).on('ready', function() { 
    $('#textbox').on('change keyup', function() { 
     if (this.value.length > 3) { 
      alert("Four characters detected!"); 
     } 
    }); 
}); 
+0

我參加了'輸入'事件,因爲它涵蓋了許多不同類型的輸入,包括右鍵單擊粘貼等,因爲我在這裏找到:[link] http://stackoverflow.com/questions/17317465/jquery-textbox-change-event-doesnt-fire-until-textbox-loses-focus – JohnV 2014-09-20 07:45:41

0

可能是你的JS是元素之前加載。防止這種使用$(document).ready(function(){ your code here });

這將觸發你的功能,只有在你的頁面完全加載後。