当前位置: 首页 > 面试题库 >

jQuery ajax返回错误但成功

沈运恒
2023-03-14
问题内容

我有以下JS

function change_ajaxarea1(){
navigator.notification.activityStart();
$('#ajaxarea1').load('http://server.net/droiddev/backbone1/index.php/welcome/', function(){

navigator.notification.activityStop();
$('#ajaxarea1').css("height","auto");
//$('#ajaxarea1').css("overflow","hidden");
});

//navigator.notification.activityStart();
}


function postarticle(){

 $.post("http://server.net/droiddev/backbone1/", { headline: "John", article: "2pm" } );

 }


function addarticle(){

var headlinetemp=$('#headline').val();
var articletemp=$('#article').val();
$.ajax({
type:'POST',
dataType:'json',
url: "http://server.net/droiddev/backbone1/index.php/welcome/addarticle/",
data: { 'headline': headlinetemp, 'article': articletemp},
success:function(){
alert('success');
},
error:function(xhr){
alert(xhr.status);
}



});



}

和以下控制器代码:

  <?php

class Welcome extends CI_Controller {


    public function index()
    {

    $data['query']=$this->site_model->get_last_ten_articles();
$this->load->view('partial1',$data);

    }

    public function addarticle(){

    $headline=$this->input->post('headline');
    $article=$this->input->post('article');
    $this->site_model->insert_entry($headline,$article);



    }
}

addarticle()javascript
ajax可以运行并将vars发送到服务器并进入db,但是,javascript然后将运行错误函数而不是成功函数。http响应代码是200,我以为它将运行Success函数。有什么建议?


问题答案:

您需要从控制器返回json,因为这是jQuery期望的。您可以返回即

{ success : true }

或者,您可以将html设置为数据类型(也许它可以在没有内容的情况下运行,但是您可能需要返回一些内容)



 类似资料:
  • 问题内容: 我使用以下jQuery通过数据服务插入数据。事件虽然我得到了状态响应201,并且数据已成功插入到我的数据库中,但系统仍然将其视为错误并给我“失败”警报? 我在这里想念什么? 更新: 来自Fire Bug的调试消息: 问题答案: 您必须发送{dataType:’text’}才能使成功函数与jQuery和空响应一起使用。

  • 我已经构建了一个使用AJAX提交表单数据的登录脚本。 PHP部分在没有AJAX的情况下运行良好。但是系统不能与AJAX实现一起工作。 它始终显示以下消息,即使 PHP 文件返回 true[正确的用户名 用户名/密码不正确 超文本标记语言Result Div JQuery fn_login.php 有人可以指出代码/实践中的错误吗? 刚刚尝试禁用AJAX,当用户名/密码正确时,PHP文件可以正确回显

  • 我们正在尝试从一个“SecKey”创建一个“SecKey”。der文件。但是' SecKeyCreateWithData '总是抛出' Nil '错误。
 遵循的步骤: 首先,我们创建了一个 ECDSA 私有 用于生成私有命令 OpenSSL EC param-genkey-name prime 256 v1-no out EC-key-pair . PEM openssl ec-in ec密钥对

  • 问题内容: 我有一个返回内部服务器错误(500)的php应用程序时出现问题,但错误日志中未显示任何内容。 现在,我知道我要运行的内容有错误,我知道缺少某些文件,但没有丢失,但是应该在apache错误日志中显示某些内容(否则,我应该如何确切知道丢失的内容)。 我创建了一个测试脚本,该脚本在相同的vhost配置下出错,并且这些错误显示得很好,因此一切似乎都已正确配置到php / apache。是否有某

  • 大家好, 这就是我的两难处境:在Chrome、Edge和Internet Explorer上,AJAX调用只返回成功,运行以下查询,一切都很好。但是,在Firefox中,AJAX调用返回时控制台日志中有一个错误,最终第二次被触发(不是有意的)以返回成功,从而开始查询等。。。警报发出“错误”信号。 我正试图从最终用户的角度解决这个问题。该函数正在运行,但如果警报返回时出错,用户将不知道他们是否正确完

  • 基类控制器里有error方法,用于api的错误消息返回输出 /** * 操作错误跳转的快捷方法 * @access protected * @param mixed $msg 提示信息,若要指定错误码,可以传数组,格式为['code'=>您的错误码,'msg'=>'您的错误消息'] * @param mixed $data 返回的数据 * @par