Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

process tag before converting it into tag using bootstrap tags input

i am using bootstrap tags input in my site. basically what i am trying to do is, ask user to type urls into a text field, now if the text is valid url then only convert it into tag otherwise don't.

is there any way to process text before converting into tags?

any help would be appriciated.

Thanks

like image 583
Ashish Joshi Avatar asked Mar 13 '23 18:03

Ashish Joshi


1 Answers

Bootstrap tags have beforeItemAdd event which triggered just before an item gets added. Bootstrap tags

$('input').on('beforeItemAdd', function(event) {
    /* Validate url */
    if (/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(event.item)) {
        event.cancel = false;
    } else {
        event.cancel = true;
    }
});
like image 98
Saravanan N Avatar answered Mar 15 '23 08:03

Saravanan N