Невозможно получить второй родительский элемент моего элемента ввода, используя jquery - PullRequest
0 голосов
/ 23 мая 2018

У меня есть следующая разметка внутри моего веб-приложения, где есть элемент ввода, теперь я хочу изменить текст нижеприведенного диапазона с "-" на что-то другое.

Теперь вот разметка: -

<span dir="none">
    <table id="OrderQuickOrder_a91a0ce2-7fb6-4c9c-97f5-e851cf4f10a6_MultiChoiceTable" cellspacing="1" cellpadding="0">
        <tbody>
         <tr>
            <td>
            <span class="ms-RadioText" title="Yes">
            <input id="OrderQuickOrder_****_MultiChoiceOption_0" type="checkbox">
            <label for="OrderQuickOrder_**_MultiChoiceOption_0">Yes</label>
            </span>
            </td>
        </tr>
        </tbody>
    </table>
</span>
<span class="ms-metadata">-</span>

и это мой селектор jQuery: -

$('input[id^="OrderQuickOrder_"]').parent('span').parent('span').nextAll('span').after('<a id="dialogtrigger" href="/*****" target="_blank">Items Order</a>' );

, но приведенный выше код ничего не изменил.я думаю, что .parent('span').parent('span') не может выбрать родительский диапазон прямого родительского диапазона элемента ввода ...

1 Ответ

0 голосов
/ 23 мая 2018

используйте родителей (), чтобы перейти к вашему выбору:

https://jsfiddle.net/fLb89q4p/

$('input[id^="OrderQuickOrder_"]').parents()
     .nextAll('span')
     .after('<a id="dialogtrigger" href="/*****" target="_blank">Items Eligable for Quick Order</a>' );

Если вы хотите удалить текст и вставить новый текст, используйте:

$('input[id^="OrderQuickOrder_"]').parents()
     .nextAll('span')
     .text('')
     .after('<a id="dialogtrigger" href="/*****" target="_blank">Items Eligable for Quick Order</a>' );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...