javascript - When space is removed in a string of input text everything on right should be erased -
so have input box deals hashtags. ex: #abc #abcd #abcde
if user decides delete space in between of words, in right should erased.
ex: "#abc#abcd #abcde" should not happen in input field. instead input field should automatically update "#abc"
any idea?
sorry thought code might not help. anyway.
$("#post_search").keyup(function () { $("#post_top_searches").show(); var ht = $('#post_search_input').val(); $("#search_display").empty(); var inputarr = ht.split(' '); var arrlen = (object.keys(inputarr).length); var newcount = (ht.match(/\s/g) || []).length; if (newcount < currentwhitespacecount) { var str = $('#post_search_input').val() var newstr = "#"; if (newcount === 0) { if (((str.match(new regexp("#", "g")) || []).length) > 1) { (var = 1, len = str.length; <= len; i++) { if (str[i] === "#") { break; } (newstr = newstr + str[i]); } } else { if (((str.match(new regexp("#", "g")) || []).length) === 1) { newstr = $('#post_search_input').val(); } } } else if (newcount > 1) { var strarr = str.split(' '); (var = 1, len = strarr.length; <= len; i++) { strarrletter = strarr.split(); (var j = 1, leng = strarrletter.length; j <= leng; j++) { // pass } } } else { (var = 1, len = str.length; <= len; i++) { if (str[i] === " ") { break; } newstr = newstr + str[i]; } } if ($.inarray("#", inputarr) < 0) { newstr = $('#post_search_input').val(); } else { (var = 1, len = str.length; <= len; i++) { if (str[i] === "#") { break; } newstr = newstr + str[i]; } } } $('#post_search_input').val(newstr); currentwhitespacecount = newcount; });
you use code instead:
$("#post_search").on ('input', function () { var index = $(this).val().search(/\s#/); if (index !== -1) $(this).val($(this).val().substr(0, index+1)); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input id= "post_search" value = "#abc #def #ghi">
use of
input
event more accuratekeyup
. first trigger when change input via mouse and/or context menu operations (for instance).the regular expression in
search
find non-space followed hash. if found, hash , characters following removed.
as hashes should consists of letters, digits and/or underscores, may want use \w
instead of \s
(which matches punctuation). you....
Comments
Post a Comment