javascript - 用js post数据后到后台,处理后如何实现前台页面刷新?
怪我咯
怪我咯 2017-04-11 09:22:04
0
3
419

我想实现一个checkbox选中文本框批量删除的效果,于是用jq的post方法提交数据到php后台,后台在处理删除操作之后,想用重定向功能显示删除成功的页面,结果发现页面不会动,刷新一下表单里面的数据才会改变。请问我是哪里写错了吗,还是不能再php后台执行重定向功能,如果不是得话,需要怎样操作才能在批量删除成功后刷新一下前台的内容呢?

js:`function batchDelete() {

if (select() == "delete") {
    obj = document.getElementsByName("check");
    var check_val = "";
    for (k in obj) {
        if (obj[k].checked)
            check_val += obj[k].value + " ";

    }
    //无法传递数组类型,所以拆违string 传递
    $.post("{:U('batchDelete')}",
            {data: check_val}/*,
             function (data) {
             alert("后台结果"+data);
             }*/
    );
}

}`

php:

 public function batchDelete(){

        $source=$_POST['data'];
        $sel_arr=explode(' ',$source);
/*
        foreach ($sel_arr as $item){
            echo $item.'---';
        }*/

        $project=M('project');
        foreach ($sel_arr as $item){
            $projectinfo=$project->where("id=$item")->delete();
        }
        $this->success("删除成功");

    }
怪我咯
怪我咯

走同样的路,发现不同的人生

全員に返信(3)
Ty80
$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: function(rs){
     //rs 为接口成功的返回值 代码逻辑写在这里,更新页面
  },
  error: function(err){
     //err 为接口失败的返回值
  },
});
いいねを押す +0
左手右手慢动作

页面肯定不会动啊,你用ajax的方式post是异步处理的形式,服务器处理过后返回一个成功或者失败,然后js再来操作DOM或者刷新就好了....

いいねを押す +0
Peter_Zhu

不明白为什么注释了post里的funcion
jquery的post就是个ajax操作,楼主你把异步回调的function个注释了还怎么处理返回结果呢?

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート