表单在div内提交空行动

时间:2012-06-16 15:28:48

标签: php javascript jquery forms html

我的问题只是我想在一个带有空操作的div中提交一个表单作为同一页面中的php脚本, 一个简单的例子来说明我的页面太长

<html>
<head>
<script>
$(document).ready(function() {
 $("#myDiv").delegate("form", "submit", function(event) {
       $.ajax({ 
            data: $(this).serialize(), 
            type: $(this).attr('method'), 
            url: $(this).attr('action'), 
            success: function(response) { 
                $("#myDiv").slideUp(500, function() {
                    $("#myDiv").html(response);
                    $("#myDiv").slideDown(500);
                });
            }
        });
        return false;    
    });
 });
</script>
<head>
<form method="post" action="">
<p> enter your name</p> <input type="text" name="name" />
<input type="submit" name="save" />
</form>
<?php
if (isset($_POST['save'])) {
echo $_POST['name'];
}
?>
</html>

表单的操作是空的问题,所以当我点击提交按钮时没有任何反应,所以任何人都知道如何解决问题? PS:在extrnak文件中提取php脚本太难了,我正在寻找替代解决方案。

4 个答案:

答案 0 :(得分:1)

试过这样的?

<?php
if (isset($_POST)) {
    echo $_POST['name'];
}
?>

答案 1 :(得分:1)

要使.delegate工作,您必须将#myDiv包裹在您希望定位的选择器周围,因为定位相当于:

$('#myDiv').find('form').on('submit', ...

换句话说,您的form必须包含在#myDiv内。

答案 2 :(得分:0)

<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">

这会将当前脚本地址放在操作字段中。

答案 3 :(得分:0)

尝试使用哈希符号。 action="#"