jQuery查找输入文本元素的几个级别

时间:2015-09-30 13:25:04

标签: jquery dom

首先感谢阅读。

我写了一个代码,假设搜索任何输入类型的文本里面很多想法是搜索,如果里面的每个元素都包含一个文本,如果是那么tr将是.show()如果内部的任何元素tr包含tr将是.hide()的文本。 但我无法得到输入的价值,也许是一些愚蠢的错误。 所以结构可能是:

   <tr>
    <td><div><div><input type="text" value="hello world" /></div></div><td>
    <td><div><input type="text" value="hello world" /></div><td>
    </tr>
    <tr>
    <td><input type="text" value="tutu" /><td>
    <td><span><input type="text" value="orl" /></span><td>
    </tr>

/* renglones is every <tr> */
$.each( renglones, function() {
        var inputs = $(this).find('input [type=text]').find('input');
        console.info(inputs);
        $(inputs).each(function() {
            console.info($(this).val());
        });
    });

2 个答案:

答案 0 :(得分:2)

您可以使用:text selector

renglones.each(function () {//assuming renglones is a jQuery object
    var $inputs = $(this).find('input:text');
    $inputs.each(function () {
        console.info($(this).val());
    });
});

答案 1 :(得分:0)

感谢Arun P Johny

最终代码:

$.each( renglones, function() {
        var $inputs = $(this).find('input:text');
        var encontrado = false;
        $inputs.each(function () {
            if($(this).val().indexOf(texto.toLowerCase()) != -1 || $(this).val().indexOf(texto.toUpperCase()) != -1){
                encontrado = true;
            }
        });
        if(encontrado){
            $(this).show('200');
        }
        else{
            $(this).hide('200');
        }
    });