这是我的两个jQuery函数
$(".enable_button").click(function(){
var server_name = $(this).attr("title");
$.get("ajax/server_ajax.php?action=enable&server_name=" + server_name), function(data) {
alert(data);
}
});
$(".disable_button").click(function(){
var server_name = $(this).attr("title");
$.get("ajax/server_ajax.php?action=disable&server_name=" + server_name), function(data) {
alert(data);
}
});
通过将action
参数和server_name
参数传递给ajax/server_ajax.php
,点击按钮即可轻松查看其功能,启用或停用服务器。 Everthing工作,但由于某种原因,返回的数据永远不会被警告。我可以验证它是否正确请求PHP文件和PHP文件返回数据,我可以在Firebug的“响应”选项卡中看到它。
我也尝试用document.write(data)
替换警报,但这也不起作用。
任何人都可以伸出援手吗?我很傻。
答案 0 :(得分:3)
您过早关闭get()
的电话。 + server_name
之后的括号不应该在那里。
$.get("ajax/server_ajax.php?action=disable&server_name=" + server_name), function(data) {
//^The ) shouldn't be here
alert(data);
}
应该是
$.get("ajax/server_ajax.php?action=disable&server_name=" + server_name, function(data) {
alert(data);
}); //<-- close the call to get( over here, not after server_name.
只是暂时但使用jQuery的ajax函数,你有能力为数据传递一个对象,jQuery将从中创建查询字符串,整齐地逃避任何需要它的东西。所以你可能会这样做,这相当于你原来的禁用呼叫:
$.get("ajax/server_ajax.php", {"action" : "disable", "server_name" : server_name}, function(data) {
alert(data);
});