如何从文本框中检测最后输入的单词

时间:2014-06-19 11:51:58

标签: javascript jquery textbox

我想从文本框中检测最后输入的单词。 例如,如果我在每个按键的文本框中键入Test,它应该返回当前键入的字符。

这是我正在尝试的

  $(".text").live("keyup",function(e)
  {
    var content=$('.text').val();
    var lastIndex = content.lastIndexOf("");
    var laststing = content.substring(0,lastIndex);
    alert(laststing);

});

4 个答案:

答案 0 :(得分:2)

$(".text").on("blur", function (e) {
    var content = $('.text').val();
    var lastIndex = content.lastIndexOf(" ");
    var laststing = content.substring(lastIndex);
    alert(laststing);

});

我认为模糊事件是一个更好的选择

http://jsfiddle.net/3gkzC/

答案 1 :(得分:1)

使用

$(".text").live("keyup", function (e) {
    var content = $('.text').val();
    var lastIndex = content.lastIndexOf(" "); //Find last index of space
    var laststing = content.substring(lastIndex); //Find rest of charcters
    alert(laststing);
});

,您可以使用.split()

$(".text").live("keyup", function (e) {
    alert($(this).val().split(' ').pop()); //Simplest                                        
});

答案 2 :(得分:1)

使用.on而不是.live

.live // jquery 1.3 +

.on // jquery 1.7 +

    <script>
$(document).ready(function ()  {

 $(".text").on("keyup",function(e)
  {
    var content=$('.text').val();
    var lastIndex = content.lastIndexOf("");
    var laststing = content.substring(0,lastIndex);
    alert(laststing);

}); 
});

    </script>   

http://jsfiddle.net/J4UsX/1/

答案 3 :(得分:1)

尝试使用函数split(),如下所示:

$(".text").on("keyup",function(e) {
    var arrayString = $('.text').val().split(""); // Create an array with all characters
    var lastString = arrayString.pop(); // Get the last character
    alert(lastString);
});

Live demo

此代码提供最后一个字符,而不是最后一个字。


参考