首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用AJAX将信息发送到PHP脚本?

如何使用AJAX将信息发送到PHP脚本?
EN

Stack Overflow用户
提问于 2012-06-03 12:03:42
回答 2查看 2.3K关注 0票数 0

我无法运行我的简单ajax脚本。代码应该非常简单。ajax脚本是:

代码语言:javascript
复制
<html>

<head><title>Testing ajax</title>

    <script type="text/javascript">

        function ajax() {

            var xmlhttp;

            var fname=document.getElementById("fname").value;

            if(window.XMLHttpRequest) {
                xmlhttp=new XMLHttpRequest();
            } else {
                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }

            xmlhttp.onreadystatechange=function() {

                if (xmlhttp.readyState==4 && xmlhttp.status==200) {

                    document.getElementById("output").innerHTML=xmlhttp.responseText;

                }

            }

            xmlhttp.open("GET","ajax.php?fname="+fname,true);
            xmlhttp.send();

        }

    </script>

</head>

<body>


    <form>

        <input type="text" id="fname">

        <input type="text" id="lname">

        <input type="submit" id="submit" onclick="ajax()">


    </form>


    <div id="output"></div>


</body>

php脚本是:

代码语言:javascript
复制
<?php

$fname=$_GET['fname'];

echo "<p>Hello ".$fname."</p>";

?>

我也尝试过:

代码语言:javascript
复制
xmlhttp.open("POST","ajax.php",true);
xmlhttp.setRequestHeader("Content-type","application/pass-data");
xmlhttp.send("fname="+fname);

我既不能使用post也不能使用get方法发送数据。我看到的不是很简单的东西吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-03 12:47:40

它不工作的原因是因为您的输入位于<form>标记中。删除表单标记后,当我尝试将<input type="submit" />控件更改为

代码语言:javascript
复制
<input type="button" onClick="ajax()" value="Submit" />

它就像一个护身符一样有效。我怀疑,由于提交时的某些好处、安全问题等等,表单行为的处理方式会有所不同。

票数 3
EN

Stack Overflow用户

发布于 2012-06-03 12:44:59

将输入类型从提交更改为按钮

输入按钮“type=”onclick=...

因为当您点击按钮时,如果type=为“submit”,它会立即提交页面。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10867796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档