2017-03-14 7 views
1

私はいくつかのチェックボックスフィールドを持つ基本的なhtmlフォームを持っています。チェックボックスをオンにして、追加されたフィールドがurlを介して渡されるようにする場合は、別のフィールドを追加します。私のコードは、これまでのところ、それが動作していない:PHPまたはJS GETフォーム:チェックボックスがチェックされている場合にフィールドを追加する方法

<form action="/s/mypage/" method="GET"> 
<input name="id1" type="checkbox" value="ime" checked/>Input 1 
<input name="id11" type="checkbox" value="deinost" />Input 11 
<input name="id2" type="checkbox" value="adres" />Input 2 
<input name="id3" type="checkbox" value="kapital" />Input 3 
<input name="id4" type="checkbox" value="upravitel" />Input 4 
<input name="id5" type="checkbox" value="sobstvenik" />Input 5 
<input name="id6" type="checkbox" value="drugo" />Input 6 
<input name="" type="submit" value="go ahead" /> 

<?php 
if (isset($_GET["id[1]"])) { 
echo '<input type="hidden" name="do" value="12345" />'; 
} 
?> 
</form> 

はどのように私はそれを行うことができますか?それはPHPを使用する必要はありません、javascriptは問題ありません。

答えて

1

条件はチェックボックスの状態によって異なりますので、クライアントサイドのjavascriptでこれを行うことをお勧めします。 1つの方法は、フォームが提出されるときにチェックすることです。あなたはjQueryのを使用している場合、それはこのようなものになります:

$('form').submit(function() { 
    if($('#id1').is(':checked')) { 
    $(this).append('<input type="hidden" name="do" value="12345" />'); 
    } 
}); 
+0

あなたの要件に適していますありがとうございました!この&&演算子が動作しないのはなぜですか? $( '#id1')が( ':チェック済み')&& $( '#id2')が( ':チェック済み')){ $(this).append( ' '); } – Tsakov

+0

構文が正しいように見えます。私はあなたが 'console.log($( '#id1')。is( ':checked')&& $( '#id2')。is( ':checked'))'を試し、本当。そうであれば、条件が満たされていることがわかります。それ以外の場合は、個々の要素を個別にチェックして問題を絞り込んでください。 –

1

をあなたは次のことを試すことができます。

<script> 
    $(function(){ 
     $('input[type=checkbox]').on('click', function(){ 
     if($(this).is(':checked')){ 
      /// your code goes here if a checkbox checked 
      } 
     }) 
    }) 
</script> 
0
<table> 
<td> 
<input type ="checkbox" id ="morning"> Morning</td><td class="hiden css"> After which period want break </td> 
            <td> <input type="text" class="hiden css" id="morning_break" pattern ="[0-9]+" name="morning_break"></td> 
        </table> 
$(document).ready(function(){ 
     $(".hiden,.hide1").hide(); 
     }); 
    $("#morning").click(function(){ 
     $(".hiden").toggle(); 
    }); 

ここでは、コード

関連する問題