forms - get checkbox group values -
this has driven me bananas. it's simple , easy , yet can't figure out what's wrong it.
i want checkbox value populated in controller (for testing purposes).
here form.
<a href='#' name='submitform'>submit form</a> //i have jquery attached tag , submit form when user clicks echo form_open('test/show'); echo form_checkbox('checkbox[]','value1'); echo form_checkbox('checkbox[]','value2'); echo form_checkbox('checkbox[]','value3'); echo form_checkbox('checkbox[]','value4'); echo "<input type='text' name='text1' value='ddd'>"; echo form_close(); //my controller test public function show(){ $data1=$this->input->post('text1'); //i can text1 value input box $data2=$this->input->post('checkbox'); //it keeps giving me undefined index 'checkbox' $data3=$_post['checkbox']; //same error message //wth going on here!!!!! }
please help. thing drives me nuts! thanks.
update: help. more precisely, submit button <a>
tag , outside of form
tag. appear have include <a>
tag inside form
tag make them works. true?
a checkbox not submit data if unchecked they're not considered successful (as per w3c specification here)
if tick box , submit, it'll work - in fact does, i've tested it.
you need wrap calls $_post
in isset()
function.
if( isset( $_post['checkbox'] ) ) {}
calling $this->input->post('checkbox')
shouldn't give undefined index error method deals eventuality. input::post()
method returns false or value of checkbox.
edit --
in response amendment question, must use element of type input
type
attribute set submit in order submit form data without use of javascript etc. button must inside <form></form>
intending submit.
<input type="submit" value="submit">
the type="submit"
causes browser send data submit event occurs. if wish use element insider or outside of form need use javascript. can disabled on per browser/user basis , isn't reliable result.
// standard javascript <form name="myform"... <a onclick="javascript:document.myform.submit();" href="javascript:void(0)">submit</a> // jquery $('#my-a-tag-submit-button').live( 'click', function() { $('#my-form').submit(); }
Comments
Post a Comment