首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在JQuery中未从PHP脚本中获取返回数据

在JQuery中未从PHP脚本中获取返回数据
EN

Stack Overflow用户
提问于 2012-10-07 18:47:43
回答 1查看 336关注 0票数 0

我正在学习如何将JQuery、AJAX和PHP集成在一起。

我的问题是,我的成功函数没有从参数中获得任何值,而只是得到了一个'0‘。我也不确定我做错了什么,但我只是一直在遵循这个教程JQuery & PHP Tutorial,只是复制了他是如何使用echoes和一个参数变量r从PHP代码中获得值的。

我试着寻找解决方案,但我不确定是否有任何结果与我正在做的事情相关。我试着遵循了他们的一些建议,但似乎没有一个管用(jQuery的承诺)

我希望有人能告诉我,我做错了什么,因为我渴望学习更多的PHP和jQuery。

代码语言:javascript
代码运行次数:0
运行
复制
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
    $(function () {
        jQuery("form").submit(function(e) { 
             var input = $("#input").val();
             var url = 'input=' + input;
             $.ajax({
               type: "POST",
               url: "process.php",
               data: url,
               success: function(r) {
                   $("#output").text(function(r) {
                        return r;
                   });
               }
             });
             e.preventDefault();
        });
    });
</script>
<title>Insert title here</title>
</head>
<body>
    <form action="process.php" method="post">
        Inputs:<br />
        <textarea rows="15" cols="60" id="input" name="input">Some text...
        </textarea><br /><br />
        Start:
        <input type="text" id="start" name="start" />
        End:
        <input type="text" id="end" name="end" /><br />
        <input type="submit" id="submit" name="submit" value="Submit">
    </form>
    <p id="output">Output: Some Random Text</p>
</body>
</html>

PHP:

代码语言:javascript
代码运行次数:0
运行
复制
require 'parser.php';
$parser = new Parser();
#header('index.php');
$hash = $parser->parse($_POST['input']);
$keys = array_keys($hash);
foreach($keys as $key) {
    echo "$key ->";
    $dests = $hash[$key];
    foreach($dests as $dest) {
        echo " $dest";
    }
    echo "<br />";
}

?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-07 18:59:35

代码语言:javascript
代码运行次数:0
运行
复制
<script>
    $(function () {
        jQuery("form").submit(function(e) { 
             var input1 = $("#input").val();
             var url = {'input' :  input1};   // a little change to the data parameter
             $.ajax({
               type: "POST",
               url: "process.php",
               data: url,
               success: function(r) {
                //   $("#output").text(r);  //<--- changed to this
                   $("#output").html(r);  // this is better as you output html
               }
             });
             e.preventDefault();
        });
    });
</script>

对于jquery text(),直接使用来自服务器的返回值。如果要输出html,请改用jquery html()

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

https://stackoverflow.com/questions/12768121

复制
相关文章

相似问题

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