我正在构建一个带有搜索输入的表单,该搜索输入在搜索输入内部显示并隐藏x
以清除该输入的内容,但不清除表单中的其他输入。我写了一个函数来显示和隐藏x
根据搜索输入是否为空。目前,我的页面基于页面宽度呈现两次表单(我知道这不是最好的,但是这是我目前的,我想离开它)。为此,我需要检查页面上的搜索输入的任何一个实例是否具有内容。检查jQuery集合中的任何输入是否具有值
下面的代码有效,但我担心它很脆弱。如果一个表单被添加或从页面中删除,我想这个代码继续工作。有关如何清理下面这一行的建议?
function toggleFilterInput() {
// The line I'd like to clean up
if (!$(".filter-input").first().val() && !$(".filter-input").last().val()) {
$(".filter-clear").addClass("hidden");
} else {
$(".filter-clear").removeClass("hidden");
}
}
编辑:我没有看到this possible duplicate,但不喜欢任何的答案,因此为什么我再次问过类似的问题。
首先,您不需要每次运行查询选择。将返回的值保存在变量中。例如:'var input = $(“。filter-input”);'也检查你的字符串的长度,这应该更准确。 – Ibu
如果你们会打消这个问题,至少要留下一个关于你为什么下调的建设性评论。 – styger