簡體   English   中英

如果以前的輸入具有有效值,我該如何顯示輸入字段?

[英]How can I show input fields only when previous input has a valid value?

我的表單需要3到10個文本輸入項。 當表單首次加載時,它將顯示3個輸入(最小值)。

我想有效地顯示輸入行,因為前一行具有有效值(例如,假設大於3個字符)。 因此,如果您填寫前3個,您將自動看到第4個可選輸入行。

你能幫我在jQuery中有效地循環這個快速列表嗎?

HTML:

<input type="text" class="item_1" name="item_1">
<input type="text" class="item_2" name="item_2">
<input type="text" class="item_3" name="item_3">
<input type="text" class="item_4" name="item_4">
<input type="text" class="item_5" name="item_5">
<input type="text" class="item_6" name="item_6">
<input type="text" class="item_7" name="item_7">
<input type="text" class="item_8" name="item_8">
<input type="text" class="item_9" name="item_9">
<input type="text" class="item_10" name="item_10">

CSS:

.item_4,.item_5,.item_6,.item_7,.item_8,.item_9,.item_10 { display:none }

這非常簡單 - 如果讓jQuery的鏈接完成工作,你甚至不需要循環。 我會這樣做:

$("#myform input").change(function(){ //If an input in your form is changed,
    if ($(this).val() == 42){ //replace with your validation logic :)
         $(this).next('input').show(); //This shows the next sibling element to the triggering element
    } else { //but if it fails validation...
         $(this).nextAll('input').hide().val(""); //hide them and delete the contents to stop the form from uploading invalidated data!
    }
});

這就是你所要求的,如果他們的前任后來被改為無效,那么它會隱藏並清空以后的獎勵積分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM