2011-07-18 3 views
2

는 내가 회원이 체크 박스 배열 (pvtContacts [])에 이미있는 경우 해당 항목을 삭제하려면이이체크 박스 배열의 내용을 확인하는 방법 전에

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>'; 
} 

같은 PHP 함수를 제출합니다. 서식을 제출하기 전에 배열의 내용을 어떻게 확인합니까?

+0

빌이 (가) 제출 중 전에 값을 제출 확인하지 못할 ... 함수가/변경 일부를 삭제 수정할 수 있습니다. 당신은 클라이언트 사이드 자바 스크립트를 사용해야합니다. – ynh

+0

귀하의 질문은 아직 명확하지 않습니다. html 코드를 만들기 전에 멤버가 배열에 있는지 테스트 해 보는 것은 어떨까요? 제출하면 html을 클라이언트로 보내거나 클라이언트가 양식을 제출하는 것 (예 : 제출 버튼 누르기)을 의미합니까? –

+0

@Martin 회원이 여전히 배열에있는 경우 회원을 삭제하고 싶습니다. 실제로 양식을 제출하기 전에 사용자가 원하는 멤버를 선택할 수있는 AJAX 응답 양식. 실수로 실수로 사용자를 선택하면 삭제할 수 있어야합니다. 하지만 내 경우에는 회원이 다시 선택됩니다! onchange() 이벤트를 사용하고 있습니다. – Nitish

답변

2

의견에서 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> 

당신은