如果这是一个简单的解决方案我很抱歉,我对jquery有点新意。首先,我不认为这是我的初始调用,因为如果我放入一个简单的警报功能,它可以正常工作,基本上当点击这个<li>
时,jquery trigers ajax到php函数将<li>
的类发送到php脚本并返回,打开带有结果的警报。据我所知它应该有效,但我的知识再次受到限制。任何改变任何人都可以看看我有什么,看看你是否可以清理它,目前没有任何事情发生onclick,甚至没有错误出现在控制台中。但我想,即使是我的ajax电话也是错误的。任何想法为什么没有发生点击?
HTML:
<li title = "Previous Month" id = "changeMonthBack" class = "<?php echo date('n'); ?>"><img src="images/leftArrow.gif" width="54" height="45" alt="previous month"></li>
的jQuery / JavaScript的:
//javascript document
$(document).ready(function(){
//need to do an onclick for getting the new month(previous)
$(".changeMonthBack").click(function(){
function calendar(){
//set the id for php
var identifier = 1;
//get the class to use for month
var str = document.getElementById("changeMonthBack").class;
//get the month number
//if the month is 1, we obviously need it to be 12
if str == 1{
var month = 12;
}
else{
var month = str - 1;
}
$.post("redraw.php"),{
identifier: identifier,
month: month
},
function(data,status){
alert("Data: " + data + "\nStatus: " + status);
};
})//end function 1
});
答案 0 :(得分:2)
脚本存在多个问题
1.由于Esthete建议选择器应该是一个id选择器#changeMonthBack
2.您正在创建一个名为calendar
但尚未调用它的闭包方法
3.有多种语法错误(使用像spket这样的javascript编辑器)
您正在创建一个名为calendar
的函数,但从不调用它。
$(document).ready(function() {
// need to do an onclick for getting the new month(previous)
$("#changeMonthBack").click(function() {
// set the id for php
var identifier = 1;
// get the class to use for month
var str = parseInt($(this).attr('class'),10);
// get the month number
// if the month is 1, we obviously need it to be 12
if (str == 1) {
var month = 12;
} else {
var month = str - 1;
}
$.post("redraw.php", {
identifier : identifier,
month : month
},
function(data, status) {
alert("Data: " + data + "\nStatus: "
+ status);
});
});
});