Sil*_*ght 39 javascript jquery
我想得到我使用jQuery选择器选择的元素类型.
标记:
<select name="a"></select>
<input name="b" type="text" />
<textarea name="c"></textarea>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
var field_names = new Array(
'a',
'b',
'c'
);
for(var i = 0; i < field_names.length; i++) {
var field = $('[name=' + required_fields[i] + ']:visible');
// ?????
// What do I write here to get one of those outputs:
// Element with name a is <select>
// Element with name b is <input>
// Element with name c is <textarea>
alert('Element with name ' + required_fields[i] + ' is ' + element_type);
}
Run Code Online (Sandbox Code Playgroud)
Jac*_*kin 63
简单:
var element_type = '<' + field.get(0).tagName.toLowerCase() + '>';
Run Code Online (Sandbox Code Playgroud)
概括地说,此检索与相关联的DOM元素field并且经由获取其标签名tagName从继承属性DOMElement,则变换的结果利用为小写String的toLowerCase()方法.有些浏览器会tagName以大写形式返回,因此为了保持一致性,您应该将其转换为小写.
lon*_*day 60
使用DOM元素的tagName属性:
var element_type = field[0].tagName;
Run Code Online (Sandbox Code Playgroud)
请注意,浏览器对于返回的情况并不完全一致tagName,因此您可能应该称之为toLowerCase安全:field[0].tagName.toLowerCase().