suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Ajax $.get request php instabil – Stapelüberlauf

HTML-Datei

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <h3>问卷调查</h3>
    <form action="#" id="forme">
        <p>姓名:<input type="text" id="username" name="username"></p>
        <p>性别:<input type="text" id="sex" name="sex"></p>
        <button id="send">提交</button> 
    </form>
    
    <hr>
    <!-- 内容展示区域 -->
    <p class="show">
    </p>
</body>
<script src="../jquery.js"></script>
<script type="text/javascript">
    $(function() {
        $('#send').click(function() {
            // $.get(url, args, callback, type)
            $.get(
                // url
                'ser.php',
                
                // args参数
                // { username:$('#username').val(),sex:$('#sex').val()},
                $('form').serialize(),
                
                // 载入数据成功 回调函数 
                function(data, textStatus) {
                    // 填入数据data
                    console.log(data, textStatus)
                    $('p.show').html(data)
                }
            )
        })
    })
</script>
</html>`

php-Datei

<?php
  header("Content-Type:text/html; charset=utf-8");
  echo "
    <h3>姓名:{$_REQUEST['username']}</h3>
    <p>性别:{$_REQUEST['sex']}</p>
  ";
?>

Frage 1: Die Rückruffunktion console.log(data),可以打印出来,但是$('p.show').html(data)Die Erfolgswahrscheinlichkeit bei diesem Schritt ist sehr gering. Jedes Mal, wenn es passiert, fühlt es sich an wie Krämpfe.

Frage 2: Im Konsolennetzwerk (Google) ist die angeforderte ser.php nicht immer verfügbar. Sorry...

Knie nieder und bettele...

阿神阿神2789 Tage vor655

Antworte allen(4)Ich werde antworten

  • 为情所困

    为情所困2017-06-05 11:09:32

    用了你写的代码测试了下,没什么问题,一点风都不抽。那就奇怪了!

    Antwort
    0
  • 高洛峰

    高洛峰2017-06-05 11:09:32

    查 PHP 的日志。

    Antwort
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-05 11:09:32

    代码看起来没问题,实际运行也没有问题。

    建议检查一下浏览器的代理、插件等与当前连网环境

    如果是开发环境可以尝试更换开发环境测试,生产环境请检查系统配置、防火墙等是否有问题。

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-05 11:09:32

    控制台network(谷歌),请求的ser.php,并不是总能请求到.

    get请求,如果每次请求的地址一样,浏览器会缓存。所以为了让每次都能请求,大家通常的做法是请求参数加个随机数,比如url:xxx.com?a=1&r=Math.radom()

    Antwort
    0
  • StornierenAntwort