gpt4 book ai didi

javascript - 如何在不计算占位符文本的情况下在 IE 中获取字段长度

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:20:52 26 4
gpt4 key购买 nike

我如何用 JS 区分占位符的字段长度与 IE 中的字段内容长度。我正在尝试获取输入字段/文本区域的内容长度,但 IE 将占位符文本计为内容。

<input type="text" value="" id="some_field" placeholder="Test" />

jQuery("#some_field").val().length //in Safari/Chrome/FF = 0 in IE7/8 = 4.

最佳答案

虽然 placeholder 属性在 >IE9 中可能不起作用,但它并不能解释为什么浏览器会武断地将 placeholder 属性的长度解释为它的长度值(value)。

为了让事情更有趣,我无法在 IE7 或 IE8 中复制此行为。在这两种浏览器中,当字段为空时,我得到的长度为 0。

这是我运行的脚本:http://jsfiddle.net/ASmJX/1/

我还尝试了 prop() 方法,看看它是否有所作为。我建议您也这样做。

HTML

<input type="text" value="" id="some_field" placeholder="Test" />

<p>
<button type="button" id="test_val">Check Length - val()</button>
<button type="button" id="test_prop">Check Length - prop()</button>
</p>

JS

$('#test_val').on('click', function() {
alert($("#some_field").val().length);
});

$('#test_prop').on('click', function() {
alert($("#some_field").prop('value').length);
});

也许您的问题不仅仅是不兼容的属性。

关于javascript - 如何在不计算占位符文本的情况下在 IE 中获取字段长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8795861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com