繁体   English   中英

Ajax值无法达到删除功能

[英]Ajax value can't reach delete function

我有这个Ajax代码,我从一个输入字段获取一个ID,并试图通过删除请求将其发送。

$("#removebutton").on("click", function() {
      var questionid = $('#questionid').val();
      $.ajax({
              url : '../admincontroller/getdatabasedata', 
              type: 'DELETE',
              data: questionid,
              success: function(response)
              {
                JSON.stringify(response);
                alert(response.ok);
              }
          });
    return false; 
  });

这是发送请求的位置:

else if ($this->input->server('REQUEST_METHOD') == 'DELETE')
    {
        $id = $this->input->get('questionid');
        if($id != ''){
            $this->adminmodel->deleteQuestion($id);
            echo json_encode(array('ok' => $id));
        }
        else{
            echo json_encode(array('ok' => $id));
        }   

    }

我试图echo $id以查看该值是否到达函数,但它仅回显UNDEFINED 为什么我的函数不能收到该值?

您没有将数据作为键/值集发送。 您只是传递了一个标量,该标量可能是字符串形式的。 PHP完全不知道名字questionid 要解决此问题,请使用一个对象作为您的请求数据。

在您的JS中,试试这个

var reqdata = {questionid: $('#questionid').val() }

然后在您的$.ajax调用中:

data: reqdata,

我不确定ajax调用的type参数中是否包含“ DELETE”会做什么。 除非我错过我的猜测,否则期望的是“ GET”,“ POST”或“ PUT”。 (参数“类型”是“方法”的别名。)

但是,您可以在ajax调用中尝试此操作。

$.ajax({
    url: '../admincontroller/getdatabasedata',
    type: 'POST',
    data: {
        request: 'DELETE',
        questionId: questionId
    },
    success: function(response) {
        ....
    }
}

尝试

data: {questionid: questionid},

在ajax请求中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM