【问题标题】:Displaying an Alertbox from PHP Controller class从 PHP 控制器类显示警报框
【发布时间】:2022-01-30 15:24:56
【问题描述】:

目前我在我的控制器中,并且我已经在控制器中放置了一个检查。基本上检查特定字段的值是否为 0。现在如果它是 0,我想通过我的控制器显示一个警报弹出窗口。为此,我尝试了以下代码:

public function status($status){ 
    if($this->input->post('id')){
        foreach($this->input->post('id') as $key => $id):
            $check_emirate = $this->listings_model->check_emirate($id);
            if($check_emirate->emirate == 0){
                echo "<script>alert('This card was not approved.');</script>";
            }else{
            $data=array('status'=>$status);  $updated=$this->listings_model->update($data,array(),$id); 
    }
        endforeach;     
    } 
    return true;
}

现在它正在输入我的 if 条件,但它没有显示弹出窗口。

这是我为启用此功能而进行的 AJAX 调用:

$(".status").click(function(e) { chagestatus($(this)); }

function chagestatus(obj){ 
  if($('.chkbx').is(':checked') == true){
    $.ajax({
      type: "post",
      dataType: "json",
      async:false,
      url: "<?php echo site_url('listings/status'); ?>/"+obj.data('val'),
      data: $(".chkbx:checked").serialize(),
      success: function(result) {}
    });
  }
}

我在这里尝试的另一件事是以这种方式使用 json_encode:

if($check_emirate->emirate == 0){
                $data = "<script>alert('This card was not approved, Thanks.');</script>";
                echo json_encode($data);
            }

  success: function(result) {
    result = JSON.parse(result);
  }

但这也没有得到任何回应。

【问题讨论】:

  • 您尝试过什么解决问题的方法?该代码是否添加到标记中? cou 如何检查条件是否被真正评估?
  • @NicoHaase 因此,由于某种原因,此警报未添加到标记中。我通过简单地打印和染色一些东西来检查它是否进入状态。我也尝试过使用 flashdata,但这不起作用
  • 您还尝试了哪些解决问题的方法?由于您尚未共享其余代码,因此几乎不可能告诉您其他地方发生了什么
  • 好的更新问题
  • 您并没有告诉我们您一开始就在使用 AJAX。您是否在任何地方评估 AJAX 结果?在服务器上调用 json_encode 并在浏览器中解析 JSON 结果无论如何都不会评估结果

标签: javascript php jquery ajax codeigniter


【解决方案1】:

如果您的控制器中的功能运行良好,那么您需要将结果从服务器附加到您的 DOM:

    success: function(result) {
        $('body').append(result);
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 2020-10-02
    • 2020-12-05
    • 1970-01-01
    相关资源
    最近更新 更多