我想知道为什么当我使用JQuery获取文本框时,文本框的长度属性永远不会返回0.即使文本框为空,$(element).length也不要返回0.
让我们说我们有这个代码:
<input id="Text1" type="text" />
$(function () {
alert($('#Text1').length);
var textBox1 = document.getElementById("Text1");
alert(textBox1.value.length);
$('#Text1').on('input', function() {
alert($('#Text1').length);
var textBox1 = document.getElementById("Text1");
alert(textBox1.value.length);
});
});
Run Code Online (Sandbox Code Playgroud)
你有$('#Text1').length没有看到,永远不会返回0.使用纯javascript,当文本框为空时它返回0.
为什么?
你需要使用文本框的价值.val().$(element).length将返回存在的对象数量的长度,$(element)在您的情况下为1:
$(element).val().length
Run Code Online (Sandbox Code Playgroud)