Member 13979401 Ответов: 1

Получить значение текстового поля при установке флажка с помощью jquery


мне нужно получить значение texbox в функции при проверке флажка

Что я уже пробовал:

<Таблица>
<?php foreach ($list_points as $points):
$i=1; ?>

&ЛТ;тр класс="gradea для того"и GT;
<td><?php echo $points['vehiclename'] ?></td>
&ЛТ;тд&ГТ;&ЛТ;тип входного="текст" имя="ptime" идентификатор="ptime-текст<?PHP Эхо $я; ?&и GT;" класс="ptime-текст"&ГТ;&ЛТ;/тд&ГТ;
<td>
<div class="i-checks ptime-check"&gt;
<этикетка>
в <тип входного="флажок" значение="" целевой="ptime-текст<?PHP Эхо $я; ?&и GT;" класс="тест" функция onclick="check_ptime();"&ГТ; &ЛТ;и&ГТ;&ЛТ;/я и GT;
</этикетка>
</div>
</td>
</tr>
<?php $i++;endforeach; ?>

</Таблица>



моя функция скрипта такова


функция check_ptime()
{
предупреждение($(это).родитель().родитель().родитель().родитель().найти('.ptime-текст').функция val());//здесь мне нужно значение thextbox
}

1 Ответов

Рейтинг:
2

Vincent Maverick Durano

jQuery имеет менять() событие, на которое вы можете подписаться, когда CheckBox проверяемый. Например:

$(".test").change(function() {
  //access the Texbox using the class name
  alert($(".ptime").val());

  //access the Texbox using the ID

  alert($("#ptime-text").val());
});


Чтобы получить доступ к нескольким значениям текстового поля в строках, вы можете сделать что-то вроде этого:

<table>
  <tr>
    <td class="td"><input type="text" class="txt"></td>
    <td><input type="checkbox" class="chk"></td>
  </tr>
  <tr>
    <td class="td"><input type="text" class="txt"></td>
    <td><input type="checkbox" class="chk"></td>
  </tr>
  <tr>
    <td class="td"><input type="text" class="txt"></td>
    <td><input type="checkbox" class="chk"></td>
  </tr>
</table>


код jQuery:
$(".chk").change(function() {
  var $row = $(this).closest("tr")   // Finds the closest row <tr> 
                       .find(".td");  // Gets a descendent with class="td"
  var $txtValue = $row.find(".txt").val();   //access the Texbox using the class
  
  alert($txtValue);
                      
});


Идея состоит в том, чтобы сгруппировать ваши элементы (text и checkbox вход) в пределах а <tr> элемент, чтобы вы могли легко ссылаться на них по потомкам.


Member 13979401

Вышеприведенное решение получается только в том случае, если есть одно значение текстового поля..но у меня есть много текстовых полей, и мне нужно получить каждое значение текстового поля при проверке соответствующего флажка

Vincent Maverick Durano

Затем вы должны сгруппировать свои элементы (текст и ввод флажков) в пределах <tr> элемент, чтобы вы могли легко ссылаться на них по потомкам.

Я обновил решение для примера. Пожалуйста, обратитесь к нему.