awesomplete icon indicating copy to clipboard operation
awesomplete copied to clipboard

textarea?

Open neuropass opened this issue 7 years ago • 2 comments

Is it possible to use this on let's say a textarea? so like create a dropdown inside a textarea. Kinda like here on GitHub when you mention someone?

neuropass avatar Feb 05 '18 14:02 neuropass

I have a textarea working...

<textarea cols="60" data-minchars="1" data-multiple id="mytextarea" rows="6"></textarea>

<script>
var input = document.getElementById("mytextarea");

input.addEventListener("awesomplete-selectcomplete", function (e) {
		input.value = input.value.replace(/\[\[/g, "[");
}, false);

new Awesomplete(input, {
	list: [
		{ label: "CiJ", value: "[EVENT_NAME_SHORT]" },
		{ label: "6/14/2019", value: "[EVENT_DATE_MMDDYYYY]" },
		{ label: "June 14th", value: "[EVENT_DATE_MMMMDD]" },
		{ label: "http://www.runners4wellness.com", value: "[WEBSITE]" },
		{ label: "Christmas in July Races", value: "[EVENT_NAME_FULL]" },
		{ label: "#christmasinjulyrun #cijrun #cij24hours", value: "[HASHTAG1]" }
	],

	filter: function(text, input) {
		return Awesomplete.FILTER_CONTAINS(text, input.match(/[^\[]*$/)[0]);
	},

	item: function(text, input) {
		return Awesomplete.ITEM(text, input.match(/[^\[]*$/)[0]);
	},

	replace: function (text) {
		var before = this.input.value.match(/(^.*\[\s*|)(^.+\[\s*|)/)[0];

		//var before = this.input.value.match(/^.*\[\s*|/)[0];
		alert(before);
		
		this.input.value = (before === "[" ? "" : before) + text.value + " ";
	}
});
</script>

briang123 avatar Feb 02 '19 22:02 briang123

It didn't work for me. Is it another sample?

brnyza avatar May 27 '19 12:05 brnyza