Как проверить содержимое массива флажков перед отправкой - PullRequest
2 голосов
/ 18 июля 2011

У меня есть такая функция php

function printSelectedMembers($id) {

    $full_name = $this->getUserName($id);
    echo '<dl>';
    echo '<dt><label for="event_show">Selected member :</label></dt>';
    echo '<input type="checkbox" name="pvtContacts[]"  checked="checked" value="'.$id.'"/>'.$full_name;
    echo '</dl>';
}

В этом я хочу удалить запись, если член уже находится в массиве флажков (pvtContacts []). Как я проверю содержимое массива перед отправкой формы?

1 Ответ

2 голосов
/ 18 июля 2011

как и в комментариях, вы не можете проверять поля с помощью php, так как они проверяются после отправки формы, но вы можете использовать javascript, чтобы проверить, установлены ли флажки.

<script type="text/javascript">
function checkForm(form) { 
    for (i=0; i<form.elements['pvtContacts[]'].length; i++) { 
        // this is where you start the checks or altering the form
        // remove (but you have to setup an unique id for each field):
        // var thisId = document.getElementById(form.elements['pvtContacts[]'][i].id);
        // thisId.parentNode.removeChild(thisId);
        if (form.elements['pvtContacts[]'][i].checked != true) { 
            // no all checkboxes are checked
            return false; 
        } 
    } 
    return true; 
}
</script>

вы можете изменить функцию наизменить / удалить некоторые части ...

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