$ .ajax总是转到错误回调函数

时间:2014-11-19 15:08:34

标签: jquery

我正在尝试检查文件是否存在,但是当我运行代码时,即使文件名是现有文件的URL,它也始终会转到错误回调函数。为什么$.ajax只输入错误回调函数?

$.ajax({
       url: filename,
       type: 'GET',
       dataType: 'text',
       async: false,
       cache: false,
       success: function ()
       {
            alert('file is found.');
       },
       error: function ()
       {
            alert('file is not found.');
       }
 });

3 个答案:

答案 0 :(得分:0)

可能会有更多问题:

  1. 该文件可能不在您认为的位置

  2. 文件可能会崩溃并无法响应

  3. 该文件可能会运行很长一段时间,您的请求可能会因超时而崩溃

  4. 你应该检查所有这些可能性。

答案 1 :(得分:0)

你必须用文件php做一个脚本jquery。

$.ajax({ url: verify.php, 
        data: {file: filename}
        type: 'GET', dataType: 'text', async: false, cache: false, 
        success: function (data) { if(data){alert('file is found.');} }, 
        error: function () { alert('file is not found.'); } 
 });

代码php

<?php
     echo file_exists($_GET['file']);
?>

或者您可以检查文件的权限

答案 2 :(得分:0)

我认为你的返回字符串数据很长。所以JSON格式已经损坏。您应该以这种方式更改JSON数据的最大大小:

打开Web.Config文件并将这些行粘贴到配置部分。

<system.web.extensions>
  <scripting>
    <webServices>
      <jsonSerialization maxJsonLength="50000000"/>
    </webServices>
  </scripting>
</system.web.extensions>