我想从包含值的输入框中获取值。其中只有一个包含3个中的某个值,其余2个为空:
下面提到的代码似乎不起作用:
var a = $('input').eq(0).val();
if (a == undefined) {
a = $('input').eq(1).val();
//if still undefined try the next input box
if (a == undefined) {
a = $('input').eq(2).val();
}
}
console.log(a);
答案 0 :(得分:2)
如果您尝试查找输入值的$(function () {
var $hamburger = $(".hamburger");
$hamburger.on("click", function(e) {
e.preventDefault();
$hamburger.toggleClass("is-active");
$(".nav").toggle().animate({
left: "90px"
}, 300 ).addClass("animated fadeIn");
});
});
,则可以使用input
而不是重复检查它们。试试这个:
filter()

var $field = $('input').filter(function() {
return $(this).val().trim() != '';
});
console.log($field.val());

请注意,上面假设只有一个字段会有值。如果有多个,那么您需要在<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" value="" />
<input type="text" value="foo" />
<input type="text" value="" />
中循环生成的集合。