2016-10-25 12 views
-1

入力タグがコンパイルされているときに「次へ」ボタンを表示するためにこのコミュニティに大きな助けを得ました。 私はこのコードを使用しました:入力タイプのテキスト、チェックボックス、ラジオ、選択タグがコンパイルされたときの表示ボタン

$('.name').keyup(function() { 
    $('#next1').toggle(this.value != ''); 
}); 

#next1 { 
    display: none; 
} 

をしかし、私のページに、より複雑な場合どのように私はそれを修正することができますか?

たとえば、ここではチェックボックス、ラジオ入力と選択タグがあります。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
    <input class="name" type="text" name="name" /> 
    <input type="text" name="phone" placeholder="Phone" /> 
    <label class="radio-inline"><input type="radio" name="internet" value='Y'>Y</label> 
    <label class="radio-inline"><input type="radio" name="internet" value='N'>N</label> 
    <label for="degree">Degree</label><br/> 
     <input type="checkbox" name="degree" value="degree"> Degree 
<select id='city' name='city' title='City' class='required1Sel form-control' > 
    <option value=''></option> 
    <option value='1'>NY</option> 
    <option value='2'>LA</option> 
    <option value='3'>MIAMI</option> 
</select> 
    <div id="next1"> 
     <input type="button" name="next" class="next action-button" value="Next" /> 
    </div> 
+0

ので、あなたはすべてのコントロールに値がある場合にのみ、次のボタンが見えるようにしたい...右? – gkb

+0

は、すべてのコントロールに「電話」以外の値がある場合にのみ有効です。 私はもっと多くのフィールドを持っていますが、すべてが必要というわけではありません。 – maures

答えて

0

「選択」または「チェックボックス」では、change()機能を使用できます。

$('#city').change(function() { 
    $('#next1').toggle(this.value != ''); 
}); 

このJSFiddleを参照してください:https://jsfiddle.net/fpwo8e7e/1/

+0

それは仕事ですが、もし私がより多くの選択タグを持っていて、私はこのうちの1つだけをコンパイルしている間、クラス(例のようなrequired1Sel)を使って次のボタンを表示します。 は、私はこのコードを試してみた $(」。required1Sel ')。各(関数(){ \t \t $('。required1Sel ')。変更(機能(){ \t \t \t $(' #次 ')を切り替える(this.value =。! ''); \t \t}); \t \t \t \t \t}); – maures

+0

しかしそれは働いていません – maures

+0

各入力に「フラグ」を入れる必要があります。 onchange(var changed1 = true)。 if(changed1&changed2&changed 3 ...)を押して、showボタンを押します。または、値が ''と等しくないかどうかを確認できます – Sergiodiaz53

関連する問題