Estoy trabajando en el módulo "me gusta" y "no me gusta" en jQuery con PHP, y me enfrento a estos dos problemas:
id del botón (me gusta = 1, no me gusta = 0)Aquí está mi código, siguiendo el código dentro del bucle foreach:
<?php foreach // ?> <form class="form-horizontals1" method="post" > <input type="hidden" id="ReviewId" name="ReviewId" value="<?php echo $rev->id;?>"> <button class="likebutn_r" id="show<?php echo "1";?>" type="submit"><img src="<?php echo base_url(); ?>/assets/img/thumb.png" height="24" width="24"></button> <label class="lilkcount">10(dynamic) </label> <button class="likebutn_r" id="shows<?php echo "0";?>" type="submit"><img src="<?php echo base_url(); ?>/assets/img/thumbdown.png" height="24" width="24"></button> <label class="lilkcount">5(dynamic)</label> <div id="counter"></div> </form> <?php end foreach // ?> <script type="text/javascript"> $(document).ready(function(){ //likebutn_r $('.form-horizontals1').submit(function(e){ var ids = $(this).attr('ids'); console.log(ids); alert($(this).attr("id")); e.preventDefault(); $.ajax({ url:'<?php echo base_url();?>main/AddVote', type:"post", data:new FormData(this), //dataType: 'json', processData:false, contentType:false, cache:false, async:false, success: function(data){ console.log(data); alert(data); $('#counter').html(data); } }); }); }); </script>Aquí está el código de mi controlador , dígame cómo puedo obtener el valor "me gusta no me gusta" en el script y cómo puedo mostrar el resultado en las vistas.
function AddVote() { $ReviewId=$_POST['ReviewId']; $vote=$_POST['vote']; echo $result['TotalUpVotes'] = $this->M_main->CountSubmittedCoinVote($ReviewId,$vote); echo $result['TotalDownVotes'] = $this->M_main->CountSubmittedDownVotes($ReviewId,$vote); }Primero, mueva el formulario fuera del bucle.
<form class="form-horizontals1" method="post" > <?php foreach // ?> <div class="my-rev-container js-rev-container"> ... </div> <?php end foreach // ?> </form>Agregue una clase a las entradas, debe acceder con
<input type="hidden" class="js-form__rev" id="ReviewId" name="ReviewId" value="<?php echo $rev->id;?>">Finalmente acceda a ellos
$('.form-horizontals1').submit(function(e){ var ids = $(this).find(".js-form__rev"); console.log(ids);