在提交按钮内创建提交按钮

时间:2014-06-20 16:50:05

标签: php html forms

我在表单中遇到了提交按钮的问题,点击它时首先会重新加载当前页面,这会在发布到帖子页面之前在原始页面内创建一个提交按钮。

您可以在此处查看行为示例:

http://tampary.com/pick_game.php?c_id=15&p_id=0&f_id=1&l_id=1

点击“开始游戏”后,您可以在浏览器中单击,然后您将看到嵌套控件。使用Chrome和Firefox,您可以获得相同的结果。什么可能导致这种行为?理想情况下,我只是希望将php页面重定向到表单提交后才干净地加载。任何帮助将不胜感激

完整的代码如下:

<?php
    require_once(dirname(__FILE__).'/grl-lib/db.php');
    require_once(dirname(__FILE__).'/grl-lib/ui.php');
    require_once(dirname(__FILE__).'/grl-lib/family.php');  
    require_once(dirname(__FILE__).'/grl-lib/location.php');        
    require_once(dirname(__FILE__).'/grl-lib/contact.php');     
    $ui = new x_ui;
    $ui->set_ui(1);
    if (!empty($_POST)){
        $p_id = $_POST['p_id'];
        $f_id = $_POST['f_id'];
        $l_id = $_POST['l_id']; 
        $c_id = $_POST['c_id'];
    }else{
        $p_id = $_GET['p_id'];
        $f_id = $_GET['f_id'];
        $l_id = $_GET['l_id'];      
        $c_id = $_GET['c_id'];
    }
?>
<!DOCTYPE HTML>
<html lang="<?php echo $ui->getLocale($ui->language_id,1); ?>">
<head>
    <?php include_once('grl-lib/gen_include.php'); ?>
    <meta name="robots" content="noindex"> <!-- no indexing this page -->
    <link href="css/main.css" rel="stylesheet" type="text/css">
    <link href="css/devices.css" rel="stylesheet" type="text/css">
    <title>Tampary<?php ' '._('game'); ?></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">    
    <meta name=viewport content="width=device-width, initial-scale=1">
</head>
<body class="color_bg">

    <?php include('standard/header.txt'); ?>
    <!-- all content -->    
    <div class="entire_content_length aling_text_c">
        <div class="max_width_responsive align_container_c spc_a_5">
            <div class="align_container_c spc_a_5 container_c">
                    <form id="pick_game" action="game.php" method="post">
                    <?php
                        $html = '<input type="hidden" name="p_id" id="p_id" value="'.$p_id.'"><input type="hidden" name="f_id" id="f_id" value="'.$f_id.'"><input type="hidden" name="l_id" id="l_id" value="'.$l_id.'"><input type="hidden" name="c_id" id="c_id" value="'.$c_id.'">';
                        //$html = $html.'<input type="submit" value="'._('Start Game').'">';
                        echo $html;
                    ?>  
                    <input type="submit" value="Start Game">
                </form>
            </div>
        </div>
    </div>

    <?php include('standard/footer.txt'); ?>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

我看到你正在使用Ajax脚本,这很好。但绝对是罪魁祸首,因为我可以看到它在firebug中响应整个页面。

我敢打赌你的头版是Ajax并且你在某处附加了某些内容(无法快速找到它)。

无论如何,我都不相信你所做的事情(通过AJAX加载整个页面)是一种很好的做法。

查看您的AJAX请求将解决您的初始按钮问题