确定所选元素是否为表单字段的任何方便方法,即输入,选择,复选框等?
答案 0 :(得分:15)
您可以使用.is(':input')
来测试它是否是任何形式的元素。
Docrefs:
答案 1 :(得分:2)
使用普通的javascript:
$("#someelement")[0].tagName // will return name of tag (div, p, input, select, etc...)
任何jQuery对象的第一个索引[0]
都将返回其DOM对象。要在javascript中完全执行此操作:
document.getElementById("someelement").tagName;
答案 2 :(得分:0)
在纯 JavaScript 中,您可以执行类似Sizzle Engine
的操作/^(?:input|select|textarea|button)$/i.test(el.nodeName)
示例
/**
* Test is form action element
* @param {Object} el
* @return {Boolean} true if a form action element
*/
const isInput = el => /^(?:input|select|textarea|button)$/i.test(el.nodeName);
// DEMO:
document.querySelectorAll('.foo').forEach(el => console.log(isInput(el)));
<textarea class="foo">test</textarea>
<button class="foo">test</button>
<input class="foo" type="text">
<div class="foo">test</div>
<p class="foo">test</p>
https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L139
答案 3 :(得分:-1)