我想找出我的表格单元格包含文本框,文本区域或文本的位置。有没有办法在jQuery中获取元素并测试其类型?
$('tr td').each(function() {
if(textBox or textArea) {
//doA();
} else {
//doB();
}
});
答案 0 :(得分:3)
如果您想知道this
是否包含"文本框" (例如,在each
内):
if ($(this).find("input[type=text]").length) {
// Yes, at least one
}
虽然没有input
的{{1}}也是一个文本框,但您可能希望更加彻底(即使type
属性type
也是"text"
{1}}元素没有input
属性):
type
(您将要决定如何处理HTML5 if ($(this).find("input").filter(function() {
return this.type === "text";
}).length) {
// Yes, at least one
}
等。)
type="number"
更简单:
textarea
答案 1 :(得分:1)
你需要找到输入和textarea并使用length属性检查它是否存在:
$('tr td').each(function() {
if($(this).find('input[type="text"],textarea').length) {
//doA();
} else {
//doB();
}
});