提交表单在jQuery中不起作用

时间:2013-11-19 13:13:34

标签: javascript php jquery forms

问题:

尝试自动生成表单并在不受用户干扰的情况下提交表单。

完整代码:

<?php session_start(); ?>
<!DOCTYPE html>
<html lang="en">
    <head>
    <script type="text/javascript">
        $(document).ready(function()
        {        
            var url = 'test.php';
            var form = $('
                <form action="' + url + '" method="post">' +
                    '<input type="text" name="Datafile" value="' + <?php echo "upload/".$_SESSION['txtfile'].""; ?> + '">' +
                    '<input type="text" name="Perspective" value="' + <?php echo implode(" ", $_SESSION['dimensions']); ?> + '">' + 
                    '<input type="hidden" name="form_submitted" value="true">' +
                '</form>
            ');
            $('body').append(form);
            $(form).submit();
        });
    </script>
    </head>
    <body>

    </body>
</html>

在查看implode()参数错误的源代码时,它首先出现错误。

所需解决方案:

表单应在加载后自行提交。

任何能够发现错误或者表单不能自行提交的人?

4 个答案:

答案 0 :(得分:0)

您忘了在文档中加载jQuery:

<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</head>

答案 1 :(得分:0)

由于您使用的是jquery,为什么不通过post发送数据?

    $.post( "test.php", { name: "<?php echo "upload/".$_SESSION['txtfile']; ?>" , 
            Perspective: "<?php echo implode(" ", $_SESSION['dimensions']); ?>",
            form_submitted : "true"} );

答案 2 :(得分:0)

你能试试吗,

    <?php session_start(); ?>
    <!DOCTYPE html>
    <html lang="en">
        <head>

        <script type="text/javascript">
                function AutoSubmit(){
                    document.my_form.submit();
                }

        </script>
         </head>
        <body onLoad="AutoSubmit();">
                    <form action="test.php" name="my_form" id="my_form"  method="post">
                        <input type="hidden" name="Datafile" value="<?php echo "upload/".$_SESSION['txtfile']; ?>">
                        <input type="hidden" name="Perspective" value="<?php echo implode(" ", $_SESSION['dimensions']); ?>">
                        <input type="hidden" name="form_submitted" value="true">
                    </form>
        </body>
    </html>

答案 3 :(得分:0)

<?php session_start(); ?>
<!DOCTYPE html>
<html lang="en">
    <head>
    <script type="text/javascript">
       $(document).ready(function()
        {        
            var url = 'test.php';
            var form =
                "<form action="+url+" method=\"post\"><input type=\"text\" name=\"Datafile\" value=\"<?php echo \"upload/\".$_SESSION[\'txtfile\'].\"; ?> \"><input type=\"text\" name=\"Perspective\" value=\" <?php echo implode(\" \", $_SESSION[\'dimensions\']); ?>\"><input type=\"hidden\" name=\"form_submitted\" value=\"true\"></form>";

            $('body').append(form);
            $(form).submit();
        });
    </script>
    </head>
    <body>

    </body>
</html>