javascript - 调试minlength验证jquery程序

标签 javascript jquery

我编写了一个 jquery 程序来验证 minlength,但它不起作用。

我不知道如何解决其中的“select_this”问题。

我是 jquery 的初学者。

$(document).ready(function(){
	$('input[type="text"]').on('focus',function(){
		var select_this = $(this);
		minlength = select_this.attr('mLength');
		if(minlength != 0 && minlength > 0 && select_this.val().length < minlength ){
			select_this.after('<span>'+ minlength +' characters are required. </span>');
		}
	}).keyup(function(){
		if(select_this.val().length >= minlength ){
			select_this.next().remove();
		}
	}).blur(function(){
		select_this.next().remove();
	});
});
	    <p>
		    5<input type="text" mLength="5" />
		</p>
		<p>
		    10<input type="text" mLength="10" />
		</p>
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

最佳答案

变量的范围

var select_this = $(this);

焦点事件处理程序内部仅在该处理程序函数内可用,如果您需要在其他事件处理程序函数中访问它,那么也在那里声明它。

$(document).ready(function(){
	$('input[type="text"]').on('focus',function(){
		var select_this = $(this);
		minlength = select_this.attr('mLength');
		if(minlength != 0 && minlength > 0 && select_this.val().length < minlength ){
			select_this.after('<span>'+ minlength +' characters are required. </span>');
		}
	}).keyup(function(){
        var select_this = $(this);
		minlength = select_this.attr('mLength');
		if(select_this.val().length >= minlength ){
			select_this.next().remove();
		}
	}).blur(function(){
        var select_this = $(this);
		select_this.next().remove();
	});
});
<p>
		    5<input type="text" mLength="5" />
		</p>
		<p>
		    10<input type="text" mLength="10" />
		</p>
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - 调试minlength验证jquery程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41313549/

相关文章:

jquery - 主要 IE8 定位问题第 2 部分

javascript - 我如何在多个用户控件中使用 pageLoad 函数

javascript - 如何提交带有已创建的附加内容的 <a> 的表单

javascript - Gulp AssertionError - Sass 依赖项

javascript - 多个目录上的全局同步模式

php - 不同日期范围的 Highcharts 图 X 轴标签

javascript - CSS动画宽度从右到左,高度从下到上

javascript - 加载前两个图表时加载图表

javascript - 未捕获的 ReferenceError : is not defined at HTMLAnchorElement. onclick

php - 我如何在 select2 下拉列表中显示星号(以指示字段是必需的)?