Как проверить, проверен ли span od xheckbox в php? - PullRequest
0 голосов
/ 10 июня 2019

У меня есть html-форма, javascript ajax-код и php-код, который отправляет электронную почту.

У меня одна проблема.

Мои флажки сделаны с span (см. Код).Как проверить, если этот промежуток с галочкой класса отмечен.

Мой HTML:

<form id="obrazec" class="form-inline">     
    <input  class="okno" type="email" id="email" placeholder="Email" name="email" required>

    <input type="checkbox" id="trgovina" value="" name="trgovina">Spletna trgovina <span class="checkmark"></span>

    <input type="checkbox" id="oglasevanje" value="" name="oglasevanje">Oglaševanje <span class="checkmark"></span>

    <input type="checkbox" id="trgovina" value="" name="strani">Spletna stran <span class="checkmark"></span>

    <div class="submitdiv">
        <button class="submit" id="potrdi" type="button" onclick>POŠLJI</button>
    </div>
</form>

Мой JavaScript:

<script type="text/javascript">


$(document).ready(function(){

    $("button#potrdi").click(function(){
        event.preventDefault(); 
        var formData = $('#my_form').serialize();


        var email = $("#email").val();






        var boolMAIL = email.includes("@");
        var dataString = 'email=' + email;




        if(boolMAIL == true ){
        $.ajax({
            url:"action_page.php", 
            type: "POST",
            data: dataString, 
            success:function(result){

               $( ".response" ).show();
                              $( ".response2" ).hide();

               $( "#obrazec" ).hide();
            $( ".prijavatext" ).hide();

            }

        });
        }
        else
        {
               $( ".response2" ).show();


        }
    });


});


</script>

Мой php:

 $email = $_POST['email'];


    $visitor_email = $_POST['email'];

    $email_from = 'test@test.si';
    $email_subject = "Novo povprasevanje";
    $email_body = "Novo povprasevanje: 
   $email.\n ".




    $headers = "From: $email_from \r\n";
    $headers .= "Reply-To: $visitor_email \r\n";                      
    $to = "test@test.com";
    mail($to,$email_subject,$email_body,$headers);


    ?>

Он работает нормально (электронная почта), и я получаю почту, но я не знаю, как проверить, установлен ли флажок, потому что это не флажок, а поле:

<span class="checkmark"></span>

Ответы [ 2 ]

1 голос
/ 10 июня 2019

Чтобы получить значение определенного свойства с помощью Jquery, вам нужно использовать метод .prop () .Поскольку вы хотите знать, установлен ли флажок или нет, связанным свойством является флажок .

var trgovina = $("#trgovina").prop("checked");
console.log(trgovina);
0 голосов
/ 10 июня 2019

Поскольку вы уже используете jquery, вы можете получить все поля из формы (, кроме buttons / type = submit) с помощью метода serialize() (и у вас уже есть этот метод в вашем коде).Ваш javascript будет выглядеть так:

$("button#potrdi").click(function(){
    event.preventDefault(); 
    var email = $("#email").val();
    var boolMAIL = email.includes("@");

    if(boolMAIL == true ){
        $.ajax({
            url:"action_page.php", 
            type: "POST",
            data: $('#obrazec').serialize(), 
            success:function(result){

               $( ".response" ).show();
               $( ".response2" ).hide();

               $( "#obrazec" ).hide();
            $( ".prijavatext" ).hide();

            }
        });
    }

На стороне сервера ваши флажки будут доступны через их атрибуты name, например $_POST['trgovina']не проверено флажки не будут в массиве POST.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...