php - why an element is posted eventhough its unchecked? -
i using yii, want to submit form action. in action checkbox posted eventhough didn't checked it, , value of 1 always, here code:
<?php echo chtml::beginform(yii::app()->createurl('jobs/index2'), 'post'); ?> <div class="row"> <div class="col-sm-4 col-lg-3 blog-sidebar" > <div class="sidebar-module"> <h4 style="color:#d11f45">refine search</h4> <h4>division</h4> <div id="division"> <?php $i = 0; foreach ($model2 $m2){ if($m2['category']==('division')){ echo '<div class="checkbox"><label>'. chtml::checkbox("c".$i, false).$m2->tag .'</label></div>'; $i++; } } ?> </div> <hr> <h4>location</h4> <div id="location"> <?php foreach ($model2 $m2){ if($m2['category']=='location'){ echo '<div class="checkbox"><label>'. chtml::checkbox("c".$i, false, array('value'=>'hhhhhhhhhhh', 'uncheckvalue'=>'n')).$m2->tag .'</label></div>'; $i++;} } ?> </div> <hr> <?php echo chtml::ajaxsubmitbutton( 'search', array('jobs/index2'), array( 'update'=>'#jobslist', ) ); ?> </div> </div><!-- /.blog-sidebar --> <?php echo chtml::endform(); ?> <div class="col-sm-8 col-lg-9 blog-main" id="jobslist"> <?php echo $this->renderpartial('_index', array('model'=>$model)); ?> </div> </div> </div> </div> <script src="<?php echo yii::app()->request->baseurl; ?>/js/j.js"></script>
browser source:
<div class="span-19"> <div id="content"> <div class="row" style="border-top:thin #333 solid"> <img src="/patra/images/job-banner.jpg" width="100%"> </div> <form action="/patra/index.php/jobs/index2" method="post"> <div class="row"> <div class="col-sm-4 col-lg-3 blog-sidebar"> <div class="sidebar-module"> <h4 style="color:#d11f45">refine search</h4> <h4>division</h4> <div id="division"> <div class="checkbox"><label><input type="hidden" value="n" name="accouting"><input value="hhhhhhhhhhh" type="checkbox" name="accouting" id="accouting">accouting</label></div><div class="checkbox"><label><input type="hidden" value="n" name="finance"><input value="hhhhhhhhhhh" type="checkbox" name="finance" id="finance">finance</label></div><div class="checkbox"><label><input type="hidden" value="n" name="insurance"><input value="hhhhhhhhhhh" type="checkbox" name="insurance" id="insurance">insurance</label></div><div class="checkbox"><label><input type="hidden" value="n" name="hr training"><input value="hhhhhhhhhhh" type="checkbox" name="hr training" id="hr_training">hr training</label></div><div class="checkbox"><label><input type="hidden" value="n" name="information technology"><input value="hhhhhhhhhhh" type="checkbox" name="information technology" id="information_technology">information technology</label></div> </div> <hr> <h4>location</h4> <div id="location"> <div class="checkbox"><label><input type="hidden" value="n" name="lebanon"><input value="hhhhhhhhhhh" type="checkbox" name="lebanon" id="lebanon">lebanon</label></div><div class="checkbox"><label><input type="hidden" value="n" name="uae"><input value="hhhhhhhhhhh" type="checkbox" name="uae" id="uae">uae</label></div><div class="checkbox"><label><input type="hidden" value="n" name="saudi arabia"><input value="hhhhhhhhhhh" type="checkbox" name="saudi arabia" id="saudi_arabia">saudi arabia</label></div><div class="checkbox"><label><input type="hidden" value="n" name="united kingdom"><input value="hhhhhhhhhhh" type="checkbox" name="united kingdom" id="united_kingdom">united kingdom</label></div><div class="checkbox"><label><input type="hidden" value="n" name="united states"><input value="hhhhhhhhhhh" type="checkbox" name="united states" id="united_states">united states</label></div><div class="checkbox"><label><input type="hidden" value="n" name="eygpt"><input value="hhhhhhhhhhh" type="checkbox" name="eygpt" id="eygpt">eygpt</label></div><div class="checkbox"><label><input type="hidden" value="n" name="mohammad"><input value="hhhhhhhhhhh" type="checkbox" name="mohammad" id="mohammad">mohammad</label></div><div class="checkbox"><label><input type="hidden" value="n" name="hiiiiiiii"><input value="hhhhhhhhhhh" type="checkbox" name="hiiiiiiii" id="hiiiiiiii">hiiiiiiii</label></div><div class="checkbox"><label><input type="hidden" value="n" name="bvbvbvbvbv"><input value="hhhhhhhhhhh" type="checkbox" name="bvbvbvbvbv" id="bvbvbvbvbv">bvbvbvbvbv</label></div><div class="checkbox"><label><input type="hidden" value="n" name="tststststststs"><input value="hhhhhhhhhhh" type="checkbox" name="tststststststs" id="tststststststs">tststststststs</label></div> </div> <hr> <h4>status</h4> <div class="checkbox"><label><input type="hidden" value="n" name="permanent"><input value="hhhhhhhhhhh" type="checkbox" name="permanent" id="permanent"> permanent</label></div> <div class="checkbox"><label><input type="hidden" value="n" name="temporary"><input value="hhhhhhhhhhh" type="checkbox" name="temporary" id="temporary"> temporary</label></div> <hr> <h4>hours</h4> <div class="checkbox"><label><input type="hidden" value="n" name="fulltime"><input value="hhhhhhhhhhh" type="checkbox" name="fulltime" id="fulltime"> full-time</label></div> <div class="checkbox"><label><input type="hidden" value="n" name="parttime"><input value="hhhhhhhhhhh" type="checkbox" name="parttime" id="parttime"> part-time</label></div> <div class="checkbox"><label><input type="hidden" value="n" name="flexible"><input value="hhhhhhhhhhh" type="checkbox" name="flexible" id="flexible"> flexible</label></div> <hr> <h4>salary</h4> <div id="salary"> <select class="form-control" name="s" id="s"> <option value="">select salary</option> <option value="1000$">1000$</option> <option value="2000$">2000$</option> <option value="3000$">3000$</option> <option value="4000$">4000$</option> <option value="5000$">5000$</option> <option value="6000$">6000$</option> <option value="7000$">7000$</option> <option value="8000$">8000$</option> <option value="9000$">9000$</option> </select> </div> <input type="submit" name="yt0" value="search" id="yt0"> </div> </div><!-- /.blog-sidebar -->
why checkboxes posted action? , why thier values 1?
your code contains hidden
elements, it's not clear why think need them:
<input type="hidden" value="n" name="hr training"> <input value="hhhhhhhhhhh" type="checkbox" name="hr training" id="hr_training">
each of hidden
elements uses exact same name
checkbox
element.
the post array uses name
attributes if 2 different elements share same name
, post array not going create much sense. in other words, when see "hr training" in post array, how know if that's hidden
element or checkbox
?
each input should have unique name
. "grouping" of radio/checkboxes exception , that's because grouping considered single info point.
example:
status: permanent or temporary? (note utilize of radio
buttons because selection cannot both.)
<input type="radio" name="status" value="permanent" />: permanent <input type="radio" name="status" value="temporary" />: temporary
will give next results:
if "permanent" checked, info containstatus=permanent
if "temporary" checked, info contain status=temporary
if neither checked, info not contain status
@ all meanwhile, demo browser source code shows problem describe not occuring. none of unchecked checkboxes part of serialized array.
http://jsfiddle.net/mhpvm/1/
php ajax post checkbox yii
No comments:
Post a Comment