来自javascript中php脚本的数据错误输出

时间:2019-07-13 22:09:48

标签: javascript php

我有一个名为check1()的JavaScript函数,该函数通过ajax连接到服务器端并返回结果。这会发生3次,因此check1被调用了3次。如果结果正常,则调用函数htmlnow1。如果结果不正确,请致电htmlnow2。第一个我使用$ html =“ hello 1”返回$ html代码。第二个功能我使用$ html =“ hello 2”。第一次触发htmlnow1()。第二次和第三次htmlnow2()被触发。因此,它应该向我展示逻辑上的思考,第一次是hello 1输出,另外两次是hello 2输出,因此输出应该是hello 1 hello 2 hello 2。问题是在我的页面上我每次都看到两个hello 2。所以我已经输出了hello 2 hello 2 hello 2,尽管我检查了警告框,仅第二次和第三次触发了htmlnow2()函数。有什么想法可能会发生这种情况吗?任何帮助表示赞赏!

    <script type="text/javascript">

            function htmlnow1()
            {
                <?php


             $html=" hello 1";

             ?>
            }

            function htmlnow2()
            {
                <?php


             $html=" hello 2";

             ?>
            }

            function check1()
            {

            $.ajax({
            url: "/ok/alert.php",
            type: "post",
            dataType: 'json',
            data: {
            reg: "success",
            checkifexist: 1
            },
            success:function(response)
            {
                var JsonObject=response['checkifexist'];


            if (JsonObject==1)
            {

            alert('text ' + JsonObject);
            htmlnow();



            }
            else if (JsonObject==0)
            {
            alert('text '+JsonObject);
            htmlnow1();
            }

            },
            error: function(x,y,z){
            alert('An error has occurred:\n' + x + '\n' + y + '\n' + z);
            }
            });

            }

            </script>
<script>
window.onload=check1();
</script>

1 个答案:

答案 0 :(得分:0)

在服务器端,将生成HTML页面,包括发送到客户端以运行的javascript代码。 Javascript无法创建和运行php代码,它只能向服务器发送http请求以在其中运行php代码。 php代码不在客户端。

因此,服务器端将创建空函数htmlnow1()htmlnow2(),将$html变量设置为hello 1,然后立即将其重写为hello 2。调用空函数无效。