Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JQuery中从PHP获取表单值_Javascript_Php_Jquery - Fatal编程技术网

Javascript 在JQuery中从PHP获取表单值

Javascript 在JQuery中从PHP获取表单值,javascript,php,jquery,Javascript,Php,Jquery,我想从php文件到javascript文件获取表单输入值,如下所示: PHP文件: <html> <head> <meta charset = "UTF-8"> <title> Search Customer by Field </title> <script type="text/javascript" src="../lib/jquery-1.10.2.js"></s

我想从php文件到javascript文件获取表单输入值,如下所示: PHP文件:

<html>
    <head>
    <meta charset = "UTF-8">
    <title> Search Customer by Field </title>
            <script type="text/javascript" src="../lib/jquery-1.10.2.js"></script>
            <script type="text/javascript" src="../src/search-by-invoice-no.js"></script>
            <table id="results" border="1"></table>
    </head>

    <body>

    <?php

            if( isset($_GET["invoiceNo"]) && "" != $_GET["invoiceNo"])
            {

            }
            else
            {
                ?>

                <form id = "form1">
                Invoice Number <input id="invoice" name="invoiceNo" type="text" value="<?=isset($_GET['invoiceNo'])? $_GET['invoiceNo'] :""?>">
                <br/>
                <input id="submit_btn" type="submit">
                </form>

                <?php
            }
            ?>

    </body>

</html>

为什么会有这种行为?我尝试了saveral其他方法,但所有方法都失败了。

您有几个错误:inversed if/else是您无法获取值的原因,并且在输入中php输出缺少括号,输入元素应以/>结尾

<html>
    <head>
    <meta charset = "UTF-8">
    <title> Search Customer by Field </title>
            <script type="text/javascript" src="../lib/jquery-1.10.2.js"></script>
            <script type="text/javascript" src="../src/search-by-invoice-no.js"></script>
    </head>

    <body>

    <?php

            if( isset($_GET["invoiceNo"]) && "" != $_GET["invoiceNo"])
            { ?>
                <form id = "form1" action='mypage.php' method='GET'>
                Invoice Number <input id="invoice" name="invoiceNo" type="text" value="<?php echo (isset($_GET['invoiceNo']))? $_GET['invoiceNo'] :""; ?>" />
                <br/>
                <input id="submit_btn" type="submit" />
                </form>
            <?php
            }
            else
            {
                ?>
                   <p>No value received</p>
                   <input id="invoice" name="invoiceNo" type="hidden" value="0" />

                <?php
            }
            ?>

    </body>

</html>

按字段搜索客户

发票编号如果
/
其他
结构没有意义,则您的
结构无效。如果$\u GET['invoiceNo']存在且不为空,则执行
If
逻辑,因此永远不会创建表单。但是,在表单中,检查$\u GET['invoiceNo']是否存在。它永远不会,除非它是空的,那么在那里使用它有什么意义呢?

有什么区别?没有短标记?是的,我去掉了短标记,因为我们不知道他的php配置。我这样做的。invoice.length>0返回true,但.val()未定义您从何处获取$\u GET[“invoiceNo”]并且是否检查其传递是否正确?它应该可以工作。我将用我所使用的脚本编辑我的帖子,我看到的脚本很好。那么,正确的方法是什么呢?对不起,这是新来的,这取决于你想做什么。似乎您只希望在表单存在时运行jQuery函数。因此,您可以(1)显示表单,而不管$\u GET包含什么内容,(2)将JavaScript脚本放在生成表单的代码的同一部分,或者(3)如果
$(“#发票”).length>0,则只获取该字段的
.val()
。长度返回>0,但.val()仍未定义您应该使用新代码更新您的问题;如果没有看到您正在尝试的内容,就很难提供帮助。如果

<html>
    <head>
    <meta charset = "UTF-8">
    <title> Search Customer by Field </title>
            <script type="text/javascript" src="../lib/jquery-1.10.2.js"></script>
            <script type="text/javascript" src="../src/search-by-invoice-no.js"></script>
    </head>

    <body>

    <?php

            if( isset($_GET["invoiceNo"]) && "" != $_GET["invoiceNo"])
            { ?>
                <form id = "form1" action='mypage.php' method='GET'>
                Invoice Number <input id="invoice" name="invoiceNo" type="text" value="<?php echo (isset($_GET['invoiceNo']))? $_GET['invoiceNo'] :""; ?>" />
                <br/>
                <input id="submit_btn" type="submit" />
                </form>
            <?php
            }
            else
            {
                ?>
                   <p>No value received</p>
                   <input id="invoice" name="invoiceNo" type="hidden" value="0" />

                <?php
            }
            ?>

    </body>

</html>
Invoice Number <input id="invoice" name="invoiceNo" type="text" value="<?php echo $_GET['invoiceNo']; ?>" />
<html>
    <head>
    <meta charset = "UTF-8">
    <title> Search Customer by Field </title>
            <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
            <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
            <script>
                $(document).ready(function(){

                    var invoice = $('#invoice').val();
                                if(invoice == 0)
                                {
                                   alert('No value was passed');
                                }
                                else 
                                {
                                   alert(invoice);
                                }
                });
            </script>

    </head>

    <body>

    <?php

            if( isset($_GET["invoiceNo"]) && "" != $_GET["invoiceNo"])
            { ?>
                <form id = "form1" action='mypage.php' method='GET'>
                Invoice Number <input id="invoice" name="invoiceNo" type="text" value="<?php echo $_GET['invoiceNo']; ?>" />
                <br/>
                <input id="submit_btn" type="submit" />
                </form>
            <?php
            }
            else
            {
                ?>
                   <p>No value received</p>
                   <input id="invoice" name="invoiceNo" type="hidden" value="0" />

                <?php
            }
            ?>

    </body>

</html>