【问题标题】:Get type of form element with jQuery使用 jQuery 获取表单元素的类型
【发布时间】:2012-03-18 16:43:20
【问题描述】:

我有一个带有一些输入和选择的表单。我想用 jQuery 获取元素的类型。我知道我可以使用attr("input") 来获取元素是单选、复选框还是文本,但是selectstextarea 呢?

有没有像.type()这样的整体功能可以搞定?

【问题讨论】:

    标签: javascript jquery forms types


    【解决方案1】:

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

    你可以试试……

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

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

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

    【讨论】:

    • 嗯,这绝对比我的解决方案好得多..+1
    • 将工作,除了选择,它的类型是select-one!见thisJSFiddle
    • 嗨,alex,很抱歉打扰您,但如果您不关心选择类型是否为 select-one,您可以直接写 var type = this.type;
    • 谢谢 Alex。这正是我所需要的。
    【解决方案2】:

    第一个 .attr('input') 不会给你类型,用这个作为输入:

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

    对于输入,选择和文本区域:

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

    :input 选择器docs:

    说明:选择所有输入、文本区域、选择和按钮元素。

    JSFiddle DEMO

    【讨论】:

    • 另外,javascript .type 属性给出了元素的全局类型。 $("#elm")[0].type
    • @arunes。除了select,它的类型是select-one!
    • Alex 的回答比这个答案更好
    • @Alice。首先,我先回答。。其次,选择的类型是select-one,而他不想select
    • @hd。它适用于所有人。检查我添加到答案中的 DEMO。
    【解决方案3】:

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

    element.tagName
    

    【讨论】:

      【解决方案4】:

      获取元素类型(输入、选择、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');
      

      【讨论】:

        【解决方案5】:

        给你所有的元素一个类名,比如“checktype”,然后使用:-

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

        【讨论】:

          猜你喜欢
          • 2012-01-13
          • 2010-11-16
          • 2017-12-27
          • 2011-08-05
          • 1970-01-01
          • 1970-01-01
          • 2013-04-20
          • 1970-01-01
          • 2011-10-05
          相关资源
          最近更新 更多