jquery - jQuery 中确定输入与文本区域

标签 jquery forms

我希望迭代表单,将每个元素添加到一个区域。问题在于其中一些元素是选择、输入和文本框。我知道我可以使用 :input 来解决这里的问题(尽管,我真的不需要)。问题是我无法确定如何查看该元素是否是文本区域、输入、选择等。我需要正确执行此操作,因为据我所知, jQuery("input #someinput").val() 对于输入非常有效,但对于文本区域,我可能需要 jQuery("textarea#sometexarea").text()。我不确定这是否存在......

无论如何,这是我到目前为止的功能:

function getAllFormElements(id) {

    var elements = new Array();

    jQuery(id).children().map(function(){

        for (var index = 0; index < children.length; index++) {

            elements[i] = jQuery(children[i]).val();

        }

    })

        return elements;
}

最佳答案

val()<input>同样有效, <select><textarea>元素。

如果您仍想确定 :input 匹配的元素的实际类型选择器,您可以使用 is()element selectors :

$(":input").each(function() {
    var $this = $(this);
    if ($this.is("input")) {
        // <input> element.
    } else if ($this.is("select")) {
        // <select> element.
    } else if ($this.is("textarea")) {
        // <textarea> element.
    }
});

关于jquery - jQuery 中确定输入与文本区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8300584/

相关文章:

jQuery attr() 更改 img src

javascript - anchor 上的动态ID不会在其他 anchor 上触发最后一个 anchor php js pdo

jquery - 如何捕获 select2 的 Enter 按键

javascript - 使用 javascript 自动提交表单是不好的做法吗?

PHP:可以自动获取所有发布的数据吗?

php - 让所有表单验证错误都显示在 symfony 的顶部?

jquery - bootstrap typeahead 返回名称和 id

javascript - Owl Carousel 更改不起作用

javascript - 如何在 Angularjs 中访问表单值?

javascript - 如何在使用javascript提交表单之前获取POST内容