使用jQuery获取表单元素的类型

时间:2012-02-29 07:17:37

标签: javascript jquery forms types

我有一个包含一些输入和选择的表单。我想用jQuery获取点击的元素类型。我知道如果元素是广播,复选框或文字,我可以使用attr("input")获取selectstextarea呢?

是否有像.type()这样的整体功能来获取它?

5 个答案:

答案 0 :(得分:19)

您可以使用:input选择所有输入元素。

您可以尝试一些诸如......

$('#your-form').find(':input').click(function() {
    var type = this.type || this.tagName.toLowerCase();
    alert(type);
});

对于input元素,这应该为您提供type属性,例如textradiocheckbox等。

对于selecttextarea元素,它应该为您提供标记名称,例如selecttextarea

答案 1 :(得分:6)

首先.attr('input')不会为您提供类型,请将其用于输入:

var type = $('input').attr('type')

对于输入,请选择和textarea:

$('#formId :input').click(function() {
    alert(this.tagName != 'INPUT' ? this.tagName : this.type);
});​

:input选择器docs

  

描述:选择所有输入,textarea,select和按钮元素。

<强> JSFiddle DEMO

答案 2 :(得分:1)

获取元素类型(input,select,div,span等):

var elementType = $(this).prop('tagName');

检查特定元素类型:

var is_element_input = $(this).is("input"); //true or false

获取输入类型(input type="button"等)

var inputType = $(this).attr('type');

答案 3 :(得分:0)

选择和textareas是不同的标签。使用tagName

element.tagName

答案 4 :(得分:0)

为所有元素提供一个类名称为“checktype”,然后使用: -

$(".checktype").click(function(){
  alert(this.tagName);
})