jquery AJAX提交表单程序php

来源:互联网 发布:淘宝上的古着店 编辑:程序博客网 时间:2024/05/19 13:30

模板文件:

1
2
3
4
5
    <foreach name="photo" item="v"
            <h1><p>{$v.id}</p><span>{$v.name}</span></h1>
            <img src="__PUBLIC__/images/QQ/1.jpg" width="500" height="475" alt={$.name} />     
           <input class="vote" type="button" name="投票" value="投票" data-vid="<{$v.id}>"/>
    </foreach>

js部分:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$(function(){
     $(".vote").click(function(){
         var vid = $(this).attr("data-vid");    //取得按钮自定义属性的值
         $.ajax({
             url:'index.php/vote/add',           //根据自己的地址来替换
             type:"post",
             data:{vid:vid},
             dataType:"json",
             success:function(res){
                  if(res.status == 1)
                  {
                     alert('投票成功!');   //操作成功后执行的操作
                  }
                  else{
                      alert('投票失败');    //操作失败后执行的操作
                  }
             }
         })
     });
}



php部分:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class VoteAction extends Action
{
 
         function add()
         {
              $vid $_POST['vid'];
              //执行的数据库操作,根据自己的来,并返回一个结果
              $res = M('Votes')->where(array('id'=>$vid))->setInc('votes',1);
              $status = 0;
              $msg '投票失败';
              if($res)
              {
                  $status = 1;
                  $msg '投票成功';
              }
              $data array('status'=>$status'msg'=>$msg);
              $this->ajaxReturn($data);
         }
}
追问
如果我在模板文件中加入<p>得票数:{$v.votes}</p>在ajax之后,想要更新这个数值,js中该怎么写呢?
回答
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$(function(){
     $(".vote").not(".disabled").click(function(){
         var vid = $(this).attr("data-vid");    //取得按钮自定义属性的值
         $.ajax({
             url:'index.php/vote/add',           //根据自己的地址来替换
             type:"post",
             data:{vid:vid},
             dataType:"json",
             success:function(res){
                  if(res.status == 1)
                  {
                     vid++;
                     $(this).next("p").find("span.votespan").text(vid);  //把显示票数的地方显示最新的票数
                     $(this).addClass("disabled");   //将按钮添加一个样式,让其不可用。
                  }
                  else{
                      alert('投票失败');    //操作失败后执行的操作
                  }
             }
         })
     });
}


0 0
原创粉丝点击