How to not include special characters and numeric characters in JQuery TagIt

How can I show special characters (~! @ # ... etc) and numeric number (0-9) not in a tag when the user enters a value from an input tag? Is it possible to limit special characters and numeric display to plain text? Any help would be appreciated.

Current output:
enter image description here

    <%
    ArrayList alTag        = new ArrayList();
    Vector vTag             = new Vector();
    String SQL = "SELECT CODE, DESCP FROM TB_FRUIT WITH UR";
    TEST.makeConnection();
    TEST.executeQuery(SQL);
    while(TEST.getNextQuery())
    {
        Vector vRow = new Vector();

        ArrayList alInner   = new ArrayList();
        String field =TEST.getColumnString("CODE");
        String descp =TEST.getColumnString("DESCP");
        alInner.add(field);
        alInner.add(descp);
        alTag.add(alInner);
        vTag.addElement(field);
    }
    TEST.takeDown();
    %>
    <script>
    var dbArray = [<%
                  String dbCode = "";
                  String dbList = "";   
                  for(int i=0;i<vTag.size();i++)
                  {
                    dbCode      = (String) vTag.elementAt(i);
                    dbList      += "\"" + dbCode + "\",";
                  }
                  out.print(dbList); %>
               ];

      $(document).ready(function() {
      $("#myTags").tagit({
        availableTags: dbArray

        });
      });
   </script>
   <html>
   <body> 
       <input type="text" id="myTags" name="TYPE">
   </body>
   </html>

      

+3


source to share


1 answer


This restricts input to alphabets only

$('#myTags').keypress(function (event) {
    var regex = new RegExp("^[a-zA-Z]+$");
    var str = String.fromCharCode(!event.charCode ? event.which : event.charCode);
    if (!regex.test(str)) {
        e.preventDefault();
         return false;
    }

});

      

If you are open to the jquery plugin introduction, the easiset path should include [alphanum jquery plugin] and then do

$('#myTags').alpha();

      



[alphanum jquery plugin]: https://github.com/KevinSheedy/jquery.alphanum

UPDATED:

You can extend the jquery tagit plugin and override the cleared input method as shown below to replace non-alphabets.

$.widget( "ui.tagit", $.ui.tagit, {        
    _cleanedInput: function() {
    var cleanedInput = this.tagInput.val().replace(/[^a-zA-Z0-9\s]+/,"");
    return $.trim(cleanedInput.replace(/^"(.*)"$/, '$1'));
    }
});

      

0


source







All Articles