jQuery hashtag input control
This jQuery snippet will turn an INPUT element into a hashtag input control. For example, if the user type "jobs business networking", it will translate it into "#jobs #business #networking" as they are typing it. It will also string commas and whitespace.
$(document).ready(function() { $("input.hastags").bind("keyup", function () { /* replaces text as you type with hashtags */ var input = $(this); var value = input.val(); var ends_with_space = (value.substr(-1) == " "); var hashed_value = ""; var parts = value.split(" "); for (var i = 0; i < parts.length; i++) { var part = parts[i]; if (part.indexOf("#") != 0) { part = "#" + part; } if (part != "#") { if (hashed_value == "") { hashed_value = part; } else { hashed_value += " " + part; } } } if (ends_with_space) { hashed_value = hashed_value + " "; } input.val(hashed_value.replace(",", "")); }); });