Поиск элемента флажка с jQuery по TEXT - PullRequest
1 голос
/ 15 марта 2020

Мне нужно выполнить поиск элемента списка флажков с помощью jQuery по ТЕКСТ флажка, а не по значению.

Ниже поиска кода по значению

    $(document).ready(function () {
    $("#maincontent_txtSearchTo").on("keyup", function () {
        debugger;
        var g = $(this).val().toLowerCase();
        $("#maincontent_chkQuestionTo tr td input").each(function () {
            var s = $(this).val().toLowerCase();
            $(this).parent().parent()[s.indexOf(g) !== -1 ? 'show' : 'hide']();
        });
    });
});

I он нужен для поиска по TEXT .

Ниже приведен пример сгенерированного кода

    <input name="ctl00$maincontent$txtSearchTo" type="text" id="maincontent_txtSearchTo" Placeholder="Search..." />
    <table id="maincontent_chkQuestionTo">
    <tr>
        <td><input id="maincontent_chkQuestionTo_0" type="checkbox" name="ctl00$maincontent$chkQuestionTo$0" value="2057" />
<label for="maincontent_chkQuestionTo_0">What is money in finance?</label>
</td>
    </tr><tr>
        <td><input id="maincontent_chkQuestionTo_1" type="checkbox" name="ctl00$maincontent$chkQuestionTo$1" value="2058" />
<label for="maincontent_chkQuestionTo_1">What is Good?</label>
</td>
    </tr>
</table>

Благодарен, если вы можете помочь.

Многие спасибо

Джеймс

1 Ответ

1 голос
/ 15 марта 2020

Я предполагаю, что под текстом вы подразумеваете метку. Если это так, вам нужно использовать. html () на этикетке.

Попробуйте код ниже;

$(document).ready(function () {
    $("#maincontent_txtSearch").on("keyup", function () {
        debugger;
        var g = $(this).val().toLowerCase();
        $("#maincontent_chkQuestion tr td input").each(function () {
            var td = $(this).parent();
            var label = $(td).find("label");

            if($(label).html().toLowerCase().indexOf(g) == -1){
               $(td).parent().hide();
            }else{
               $(td).parent().show();
            }
        });
    });
});
...