表格提交使用jquery&传递价值

时间:2011-07-04 07:26:07

标签: javascript jquery

我想使用jQuery完成以下操作:

frm_rooms.action="create_rooms.php?action=Save";
frm_rooms.submit();

我尝试过遵循jQuery,但它不起作用:

$('#frm_rooms').submit(function(event) <br/>{
    $.post("create_rooms.php", { action: "Save" } );
});

5 个答案:

答案 0 :(得分:3)

这样做:

$('#frm_rooms').submit(function(event){
  $.post("create_rooms.php", {action: "Save" }, function(){ 
     alert("Data saved");
  });
  return false; //This is vital
});

如果您希望在查询字符串(GET方法)中传递参数,请使用$.get而不是$.post

编辑:更好地思考,如果您希望提交表单中的字段,则应该执行以下操作:

$('#frm_rooms').submit(function(event){
  $.post("create_rooms.php?action=Save", $(this).serialize(), function(){ 
     alert("Data saved");
  });
  return false; //This is vital
});

希望这会有所帮助。干杯

答案 1 :(得分:0)

您是否尝试在提交功能中使用preventDefault()

$('#frm_rooms').submit(function(event)
{
    event.preventDefault();
    $.post("create_rooms.php", { action: "Save" } );
});

另请注意,如果表单中还有一个input-element,则名称为“submit”。 jQuery的submit - 方法不起作用。

答案 2 :(得分:0)

return false;之后添加$.post()以避免重新加载页面。

答案 3 :(得分:0)

试试这个 -

$('#frm_rooms').submit(function(event)
{
    $.post("create_rooms.php", {action: "Save" } );
    event.preventDefault();
});

如果您在该表单中有input类型的submit元素,则此方法将无效。在这种情况下,您必须执行以下操作 -

$('#mySubmitButton').click(function(event)                 // Suppose the id of that 
                                                           // submit button is mySubmitButton
{
    $.post("create_rooms.php", {action: "Save" } );
    event.preventDefault();
});

如果您想向用户提供成功/失败消息,请像这样修改$.post方法 -

$.post("create_rooms.php", {action: "Save" }, function(data)
{
    // data contains server response. 
});

答案 4 :(得分:0)

您可以在按钮中添加.click()方法:

$('#button').click(function() {
   //...
   $('#form').attr('action', 'action.php');
   return false;
})