如何获得输入的最后一个值与一些动态类

How to get last value of the input with some dynamic class?

本文关键字:动态 何获得 输入 最后一个      更新时间:2023-09-26

我有多个输入和一个按钮。当我单击按钮时,活动类从第一次输入转到下一个输入。我想要做的是在按钮点击后用那个类获取之前输入的值。

怎么做?

$('.question').prev('.selected input').val();
<form action="final.php" method="post">
  <input name="intr_id" value="0" type="hidden">
  <p class="question selected" id="intreb_1">
    <input name="intr1" value="" type="hidden">Lorem ipsum dolor sit amet, consectetur adipiscing elit?</p>
  <p class="question " id="intreb_2">
    <input name="intr2" value="" type="hidden">Sed tempus hendrerit orci, sed interdum quam rhoncus quis?</p>
  <p class="question " id="intreb_3">
    <input name="intr3" value="" type="hidden">Interdum et malesuada fames ac ante ipsum primis in faucibus?</p>
  <p class="question " id="intreb_4">
    <input name="intr4" value="" type="hidden">Suspendisse hendrerit, nibh eu fringilla finibus, lacus lectus elementum nunc, sed molestie sapien orci id erat?</p>
  <p class="question " id="intreb_5">
    <input name="intr5" value="" type="hidden">Sed tempus hendrerit orci, sed interdum quam rhoncus quis?</p>
  <p class="question " id="intreb_6">
    <input name="intr6" value="" type="hidden">Interdum et malesuada fames ac ante ipsum primis in faucibus?</p>
  <p class="question " id="intreb_7">
    <input name="intr7" value="" type="hidden">Lorem ipsum dolor sit amet, consectetur adipiscing elit?</p>
  <p class="question " id="intreb_8">
    <input name="intr8" value="" type="hidden">Sed tempus hendrerit orci, sed interdum quam rhoncus quis?</p>
  <p class="question " id="intreb_9">
    <input name="intr9" value="" type="hidden">Interdum et malesuada fames ac ante ipsum primis in faucibus?</p>
  <p class="question  last" id="intreb_10">
    <input name="intr10" value="" type="hidden">Lorem ipsum dolor sit amet, consectetur adipiscing elit?</p>
  <div class="answerswer_buttons">
    <a class="nu" href="">No</a>
    <a class="da" href="">Yes</a>
  </div>
</form>

所以,如果我的理解是正确的,你有:

Input 1, wrapped by some container
Input 2 wrapped by some container

在填充输入1后,输入2容器得到一个"选定"类,在这一点上,你想看看输入1的值是多少?

首先,要记住这是一个糟糕的解决方案设计,因为您的业务逻辑与您的表示混淆了(并且依赖!)。

最干净的方法是让两个容器都有一些泛型类,比如"input-field-container"。这样,在第二个容器也被选中之后,它的类将是"input-field-container selected"。然后,使用jQuery,您将拥有:

$(".input-field-container.selected")
    .prev(".input-field-container")
        .children("input").first().val()

注意,如果您的实际输入被包装在容器和输入之间的中间元素中,则可能必须用find替换子元素。

翻译:得到选定的容器,然后得到它上面的第一个容器,然后得到它的第一个子输入并得到它的值。

同样,这是一种糟糕的方法——输入的值应该与一个应该负责读取它们的模型同步,而不应该依赖于这样的逻辑。

在将类转移到下一个输入的代码之前添加var val = $(".question.selected input[type='hidden']").val()将获得值