Я использую Jquery 3.4.1.
У меня есть HTML-форма, которая содержит такие элементы, как этот.Это помещается
<section id=question1>
<input name=A type=radio value=1>Some text (Some text)
<input name=A type=radio value=2><i>Some text</i>
<u class=somewrapper><input name=A type=radio value=3><i>Some text<i> (Some text)</u>
<u class=somewrapper><input name=A type=radio value=4><i><em>Some text</em><i> (Some text)</u>
<u class=somewrapper><input name=A type=radio value=5><u><em>Some text</em><u> (Some text)</u>
</section>
Я хотел бы получить значение текста после ввода текста, который я выбрал.
$("input[type='radio']").on("click", function(){
var allInputs = $(this).parent().find("input");
var Chk = $(allInputs).filter("input:checked");
console.log($(Chk).find(text=true));
});
Мне нужно получить вещи (будь то теги или пустой текст), которые находятся между выбранным вводом и следующим вводом или концом этого раздела.
Когда первый ввод выбрал результатможет быть array[0] = "Some text (Some text)"
Когда выбран второй вход, результатом может быть array[0] = object with i tag containing the text
.Когда третий вход выбран, результат может быть как array[0] = object with i tag containing text "Some text"
и array[1] = object with a text "(Some text)"
(или что-то вроде этого)
Я также попытался получить следующие элементы:
console.log( $(Chk).NextAll() );
Но я получилошибка в Chrome (49.0.2623.112 м), NextAll не является функцией.
Примечание: Цель, по которой я хочу искать текст после ввода, состоит в том, что я хочу изменить текст, когда пользователь мобильногоустройство щелкнуло по радиобоксу.Я хочу скрыть текст или сделать его короче, когда выбрана эта опция, и отображаемый текст занимает меньше места на маленьком экране.Это не предмет обсуждения, я просто хочу объяснить, почему я пытаюсь найти тексты, за которыми следует тег ввода.