2011-12-03 249 views
1

我有以下工作形式:自动提交表单时,触发/功能触发

<div id="player_won"> 
<form action="insert.php" method="post"> 
Firstname: <input type="text" name="firstname" /> 
Lastname: <input type="text" name="lastname" /> 
Score: <input type="text" name="score" /> 
<input type="submit" /> 
</form> 
</div> 

当点击提交,将数据提交给我的数据库。所有作品都很棒。唯一的缺点是它会在成功提交后显示这个insert.php文件。

现在我也有以下触发:

function gameWon(){ 
var $game_board = $("#game_board_container"); 
var $player_won = $("#player_won"); 
$player_won.show(); 
$game_board = $player_won = null; 
}; 

发生这种情况时,它会显示DIV,其中形式是因为所有的字段已经预填,我也想提交。同时自动生成,无需按提交按钮。 (但仍显示课程的形式/ div)

如何做到这一点?另外,我也不想被转发到insert.php文件。我只想让div在triggert时弹出,同时提交表单,并且什么也不做(如果需要,用户可以自己关闭弹出的div)。

希望你们能帮助我!

亲切的问候, 莫里斯

回答

1

要触发提交,只是做$("form").submit()。为了避免去insert.php文件,在提交函数的末尾添加return false;

但是,为了这个工作,你必须做一个阿贾克斯职位。

如:

$(function(){ 
    $("form").submit(function(){ 
     $.ajax({ 
     //ajax post logic 
     }); 
     return false; 
    }); 
}); 
+0

谢谢,我会玩这个,稍后再回来 – Maurice

+0

它的工作,这是我的最终代码:'' – Maurice