vengo a pedir de su gran ayuda, por mas que busco no logro entender que estoy haciendo mal en este pequeño codigo, veran estoy aprendiendo jquery por lo que aun se me dificulta bastante esto si alguno muy amable pudiera decirme donde esta el error le estaria muy agradecido, es un pequeño sistema de puntuación por estrellas
Código:
<div id="star-container" class="votacion">
<i class="fa fa-star star" id="star-1"></i>
<i class="fa fa-star star" id="star-2"></i>
<i class="fa fa-star star" id="star-3"></i>
<i class="fa fa-star star" id="star-4"></i>
<i class="fa fa-star star" id="star-5"></i>
</div>
<div id="result"></div>
<noscript>Necesitas tener habilitado javascript para poder votar</noscript>
Código:
<script>
$(document).ready(function(){
$('.star').on("mouseover",function(){
var star_id = $(this).attr('id');
switch (star_id){
case "star-1":
$("#star-1").addClass('star-checked');
break;
case "star-2":
$("#star-1").addClass('star-checked');
$("#star-2").addClass('star-checked');
break;
case "star-3":
$("#star-1").addClass('star-checked');
$("#star-2").addClass('star-checked');
$("#star-3").addClass('star-checked');
break;
case "star-4":
$("#star-1").addClass('star-checked');
$("#star-2").addClass('star-checked');
$("#star-3").addClass('star-checked');
$("#star-4").addClass('star-checked');
break;
case "star-5":
$("#star-1").addClass('star-checked');
$("#star-2").addClass('star-checked');
$("#star-3").addClass('star-checked');
$("#star-4").addClass('star-checked');
$("#star-5").addClass('star-checked');
break;
}
}).mouseout(function(){
$('.star').removeClass('star-checked');
});
$('.star').click(function(){
var star_index = $(this).attr("id").split("-")[1],
star_container = $(this).parent(),
result_div = $("#result");
$.ajax({
url: 'pages/rating_start.php',
type: 'POST',
data: {star:star_index},
beforeSend: function(){
star_container.hide();
result_div.show().html("<h6>Loading...</h6>");
}
})
.done(function(data){
result_div.html(data);
})
.fail(function(data) {
alert( "error" );
})
});
});
</script>
Código:
<?php
if(isset($_POST['star'])){
$star = htmlentities(mysql_real_escape_string($_POST['star']));
//valid star id array
$valid_star = array('1','2','3','4','5');
if(!in_array($star, $valid_star)){
echo '<div class="alert alert-danger" role="alert">Porfavor no haga esto!</div>';
exit();
}
echo '<div class="alert alert-success" role="alert">Gracias! '.$star.' Estrellas.</div>';
}
?>
se queda en esta linea ""result_div.show().html("<h6>Loading...</h6>");"" y salta el error