function checkInputData() {
$('.mainSearchSubmit').live('click', function () {
var inputData = $(this).parent().children().eq(0).val();
console.log(inputData.length);
//this returns undefined
console.log(inputData);
//and this returns text from inpu so i know there is data
});
}
任何想法为什么会发生这种情况,在其他情况下从输入中检索val()时它总是以字符串形式出现?
答案 0 :(得分:12)
length
未定义的唯一解释是inputData不是字符串。你忽略了提到你正在使用什么类型的输入,但无论如何,转换为字符串应该可以解决问题:
function checkInputData() {
$('.mainSearchSubmit').live('click', function () {
var inputData = $(this).parent().children().eq(0).val();
inputData = String(inputData); // Cast to string
console.log(inputData.length);
//this returns undefined
console.log(inputData);
//and this returns text from inpu so i know there is data
});
}