如何在jquery中同时找到所有输入元素的值
Posted
技术标签:
【中文标题】如何在jquery中同时找到所有输入元素的值【英文标题】:how can find all input elements value at same time in jquery 【发布时间】:2016-01-31 17:27:44 【问题描述】:我的问题是如何找到所有输入元素并搜索它们的值? 我想搜索所有具有相同名称的输入元素,查找输入的值是否为空并警告如下:
var emptyCheck = "";
function emptyOrNot()
if ($('[id="empty"]').val() == "")
emptyCheck = "empty";
else
emptyCheck = "filled";
这段代码只找到表单中的第一个输入元素,不能全部找到。结果会出错。
【问题讨论】:
1. ID 应该是唯一的。 2.$('[name="empty"]')
将选择多个元素,因此您需要使用 each
迭代它们。
$('[id="empty"]' 你正在使用 id。ID 总是并且必须是唯一的使用类
使用前面所说的类然后使用过滤器jq方法:if($('.empty').filter(function()return !this.value.trim();).length) alert('At least one .empty element has no value!');
。另一种选择是使用required
属性:form validation support
【参考方案1】:
您也可以使用 $.each 来检查它们。您是否正在制作自己的表单验证? :)
好的,你的代码可以是这样的:
function emptyOrNot()
var emptyCheck = 0;
$('input').each(function()
if ($(this).val() == "")
emptyCheck++;
)
if(emptyCheck == 0)
return true;
else
return false;
【讨论】:
应该验证只有空格的输入吗?重复ID怎么办?无论如何,这里element
不是jq对象,使用$(element).val()
或者更好的element.value
我刚刚更新了他的代码。所以也许他希望用户通过空格传递表单:) 你对选择器是正确的。用 $(this) 更正它现在应该可以了。
最好,只是元素有问题,您已纠正,谢谢以上是关于如何在jquery中同时找到所有输入元素的值的主要内容,如果未能解决你的问题,请参考以下文章