当前位置: 首页 > 知识库问答 >
问题:

Ajax调用似乎无法识别我的文件

笪建章
2023-03-14

我有一个非常简单的超文本标记语言文件,其中有一个按钮。当单击此按钮时,函数loadDoc()在javascript文件(ajax.js)中运行。带有IDajax_text的div被更改为“单击”。到目前为止还不错。

现在,我试图对一个php文档进行ajax调用。php文档应该响应“Hello World!”。我试图通过使用警报(alert(msg))来显示此消息。php文档与我的HTML文档位于同一文件夹中。

我在我的ajax呼叫中做错了什么??

我已经尝试了多个URL,比如:-'http://localhost/ajax_info.php“-文件的完整路径-”localhost/ajax_info。php'

等等等等。

HTML:

<!DOCTYPE html>
<html>
  <head>
  </head>

  <body>
    <div id="name">John</div>
    <div id="demo">
      <h2>Header 2</h2>
      <button type="button" onclick="loadDoc()">Change Content</button>
    </div>
    <script src="jquery-3.2.1.js"></script>
    <script src="ajax.js"></script>
  </body>
</html>

JavaScript:

function loadDoc() {

document.getElementById('name').innerHTML = "Steven";

    $.ajax({
        type: 'GET',
        url: 'ajax_info.php',
        success: function(msg){
            alert(msg);
        }
    });
 }

PHP:

<?php  echo "Hello World"; ?>

共有2个答案

宓和同
2023-03-14

试着把javascript代码写在有html. it的页面里面。

<!DOCTYPE html>
<html>
<head>

</head>

<body>


<div id="name">John</div>

<div id="demo">
  <h2>Header 2</h2>
  <button type="button" onclick="loadDoc()">Change Content</button>
</div>


<script src="jquery-3.2.1.js"></script>
<script>
  function loadDoc() {
  document.getElementById('name').innerHTML = "Steven";

    $.ajax({
        type: 'GET',
        url: 'ajax_info.php',
        success: function(msg){
            alert(msg);
        }
    });
  }
</script>
公冶威
2023-03-14

它看起来像是从文件浏览器中以文件的形式调用html页面,而不是通过web服务器调用
如果您在浏览器中的地址有file://somefolders/myhtml.html你的php脚本(实际上是服务器)会说“你好,我不在这里!”-

现在你可以告诉你的服务器“不,不用麻烦了,我会允许所有人!”
这是设置标题('Access-Control-Allow-Origin:')时要做的事情

但您最初的问题是,html文件不是在同一个来源,即您的(本地)服务器上调用的。

所以如果你输入浏览器的地址栏http://localhost/ajax.html而且不要在文件资源管理器中双击文件,它应该可以工作,因为现在它们(html和php)都生活在同一个环境中。

 类似资料:
  • 我有两个这样的域类。 我也有两门这样的Dto课。 所以我制作了一个映射器类StudentMapper,它扩展了GenericMapper。 但是我在编译Mapper时出错了。 " StudentDto没有可访问的构造函数." 这些代码有什么问题? 我希望学生是不可修改的。使用lombok和mapstruct的最佳方式是什么? 您可以从这里获得源代码。https://github.com/jangd

  • 我在scala项目中使用Flyway版本5.2.4,并且我的所有迁移脚本都在src/main/Resources/db/迁移下,具有以下文件夹结构 位置设置为db.migrations(没有任何前缀。Flyway留档表示如果不使用前缀,则支持sql/java迁移) V1和V2似乎没有问题。但是V3被忽略了。我尝试添加V3\uu java\u迁移。java也一样,它没有什么不同。是否有人有幸添加了非

  • 问题内容: 我在Spark上使用Python时遇到问题。我的应用程序具有一些依赖项,例如numpy,pandas,astropy等。我无法使用virtualenv创建具有所有依赖项的环境,因为群集上的节点除HDFS外没有任何公共的挂载点或文件系统。因此,我坚持使用。我将站点程序包的内容打包到一个ZIP文件中,然后提交与option一样的作业(如在Spark executor节点上安装Python依

  • 总的来说,我对tomcat和JSP很陌生,我还搜索了无数其他问题,这些问题似乎有完全相同的问题,但没有一个能解决我的问题。 服务器结构包含(以及其他内容,如css文件和其他html资源)一个jsp文件和一个java类: jsp文件包含: Java 类的源文件如下所示: 现在,我(重新)启动tomcat服务器,用浏览器访问jsp文件,并得到以下错误消息: 无法编译 JSP 的类:在生成的 java

  • 我在Spark上使用Python时遇到问题。我的应用程序有一些依赖项,如numpy、pandas、astropy等。我无法使用virtualenv创建具有所有依赖项的环境,因为集群上的节点除了HDFS之外没有任何公共挂载点或文件系统。因此,我一直坚持使用。我将站点包的内容打包在一个ZIP文件中,并使用

  • 问题内容: 我通过清单中的“导出向导”导出了我的eclipse插件,似乎一切进行得很好(没有错误)。它在zip文件的插件目录中创建了一个.jar文件。 我以为将jar放入我的Eclipse插件目录中将进行安装(在重新启动eclipse之后),但这没有用。Eclipse看不到插件(透视图未显示) 我尝试使用“帮助”->“安装新软件”->“本地存档”,但始终显示“找不到软件” 您能帮我准备好将插件安装