我有一个复杂的网站设置,所以我只是举一个简单的例子。
当前设置
我有两个按钮。
<a id="one" href="#">Link 1</a>
<a id="two" href="#">Link 2</a>
我有两个div
<div id="showOne" style="display:none">1</div>
<div id="showTwo" style="display:none">2</div>
这是我的JQuery代码
$('#one').click(function (e) {
$('#showOne').show();
});
$('#two').click(function (e) {
$('#showTwo').show();
});
我正在尝试完成的内容
基本上,我有一个数据库表设置,有一行可以计算显示div(showOne)和div(showTwo)的次数。
如果display = block,我如何使用AJAX向数据库行添加一个也称为计数器?
我的尝试
$('#one').is(":visible")
{
$.ajax({
type:"POST"
url: update.php
data: {type:link_one_shown}
success: function(data){
alert("Test");
}
})
当我这样做时,我的其余JQuery代码崩溃了。不确定这是否有意义,或者我只是写错了。
提前谢谢!
答案 0 :(得分:2)
我可以看到三个问题:
if
声明。data
不正确 - link_one_shown
应该是变量(您还没有定义?)或字符串文字。ajax
功能参数之间缺少逗号。以下是修改后的代码:
if ($('#showOne').is(":visible")) {
$.ajax({
type:"POST",
url: update.php,
data: { type: "link_one_shown" },
success: function(data){
alert("Test");
}
});
}
答案 1 :(得分:0)
为什么不只是将ajax调用移动到函数并在显示div时调用它,这可以避免代码重复并使其更简单。
$('#one').click(function (e) {
$('#showOne').show();
updateDB('link_one');
});
$('#two').click(function (e) {
$('#showTwo').show();
updateDB('link_two');
});
function updateDB(link)
{
$.ajax({
type:"POST"
url: update.php
data: {type:link}
success: function(data){
alert("Test");
}
});
}