У меня код jquery запутывает меня! Иногда это прекрасно работает, а иногда нет! хотя у меня была такая же проблема с css! я думал, потому что веб-браузер. все та же проблема
КОД JAVASCRIPT
$('.glyphicon-chevron-up').click(function() {
var vote = "up";
var value = $(this).attr('value');
var userid = $('#this').val();
$.post('data.php', {cmtid: value, op: vote, user: userid}, function(data){
if(data == "-1") {
alert('Something went wrong');
}
else if(data == "-4") {
alert('You already voted');
}
else if(data == "-2") {
alert('You cant vote up again');
}
else if(data == "-3") {
alert('You cant vote down again');
}
else {
var vdata = '#vdata' + value;
$(vdata).html(data);
}
});
});
PHP-код
<div class="col-xs-12">
<i class="glyphicon glyphicon-chevron-up" id="voteup" value="<?php echo $comment->data()->id; ?>"></i>
</div>
есть ли что-то неправильное код?! кажется простым
Без разъяснений трудно сказать, в чем заключается ваша проблема. Надеюсь, это поможет вам. Откройте консоль браузера, прежде чем запускать скрипт (f12), чтобы он разбился на debugger;
и вы можете увидеть консоль.
Если вы никогда не видите "нажата кнопка". в консоли ваша проблема, вероятно, связана с вашим селектором.
Эта статья может помочь вам подобрать некоторые советы о том, как отлаживать эти проблемы. У Chrome есть встроенная консоль разработчика, которая, на мой взгляд, лучше, чем Firebug, но идея такая же.
Удачи.
$(function () {
console.log('The DOM is ready.');
if ($('.glyphicon-chevron-up').length === 0) {
console.warn('Nothing matches this selector.');
}
$('.glyphicon-chevron-up').click(function () {
console.log('The button was clicked.');
var vote = "up";
var value = $(this).attr('value');
var userid = $('#this').val();
// hit F8 to continue to see if the ajax call works
console.log('about to send', {cmtid: value, op: vote, user: userid});
debugger;
$.ajax({
url: 'data.php',
type: 'POST',
data: {cmtid: value, op: vote, user: userid},
success: function (data) {
console.log('here is the response', data);
debugger;
if (data == "-1") {
alert('Something went wrong');
} else if(data == "-4") {
alert('You already voted');
} else if(data == "-2") {
alert('You cant vote up again');
} else if(data == "-3") {
alert('You cant vote down again');
} else {
var vdata = '#vdata' + value;
$(vdata).html(data);
}
},
error: function () {
console.error('the call failed');
debugger;
}
});
});
});
$('#this').val();
так как у вас нет html-элемента с идентификаторомthis
... по крайней мере из ваших кодов, данных нам.