JSFiddle - React, Tailwind, and code Playground

HTML

<form class="form-horizontal">
<fieldset>

<!-- Form Name -->
<legend>Form Name</legend>

<!-- Text input-->
<div class="control-group">
  <label class="control-label">Text Input</label>
  <div class="controls">
    <input id="textinput" name="textinput" placeholder="placeholder" class="input-xlarge" type="text">
    <p class="help-block">help</p>
  </div>
</div>

<!-- Text input-->
<div class="control-group">
  <label class="control-label">Text Input</label>
  <div class="controls">
    <input id="textinput" name="name" placeholder="placeholder" class="input-xlarge" type="text">
    <p class="help-block">help</p>
  </div>
</div>

<!-- Multiple Radios -->
<div class="control-group">
  <label class="control-label">Multiple Radios</label>
  <div class="controls">
    <label class="radio">
      <input name="radios" value="Option one" checked="checked" type="radio">
      Option one
    </label>
    <label class="radio">
      <input name="radios" value="Option two" type="radio">
      Option two
    </label>
  </div>
</div>

<!-- Multiple Checkboxes -->
<div class="control-group">
  <label class="control-label">Multiple Checkboxes</label>
  <div class="controls">
    <label class="checkbox">
      <input name="checkboxes" value="Option one" type="checkbox">
      Option one
    </label>
    <label class="checkbox">
      <input name="checkboxes" value="Option two" type="checkbox">
      Option two
    </label>
  </div>
</div>

<!-- File Button --> 
<div class="control-group">
  <label class="control-label">File Button</label>
  <div class="controls">
    <input id="filebutton" name="filebutton" class="input-file" type="file">
  </div>
</div>

<!-- Multiple Checkboxes (inline) -->
<div class="control-group">
  <label class="control-label">Inline Checkboxes</label>
  <div class="controls">
    <label class="checkbox inline">
      <input name="checkboxes" value="1" type="checkbox">
      1
    </label>
    <label class="checkbox inline">
      <input...

JavaScript

(function($) {
    jQuery.fn.validate = function(options) {
		//Настройки
        var settings = $.extend({
			"main_form_event_type"	: "change",
			"fild_settings"			: { },
		}, options);
		var $this = this;
		
		//Инициализация плагина
		function init_validate(){
			//Проверяем есть ли настройки для данного элемента формы
			$($this).find("input:not(:submit),text").each(function(){
				var name = $(this).attr("name");
				//Проверяем пришло ли событие для этого элемента
				event = settings.main_form_event_type;
				if (settings.fild_settings[name] != undefined){
					if (settings.fild_settings[name]["event"] != undefined){
						event = settings.fild_settings[name]["event"];
					}
				}
				//Устанавливаем событие валидации
				$(this).on(event,function(){
					alert("ss");
				});
			});

		}
	
        return this.each(function() {
			init_validate();
        });
    };
})(jQuery);

$(".form-horizontal").validate({
		fild_settings:{"name":{"event":["click"],"errror_show":[".ss"]}},
	});