2010-03-18 95 views
4

使用jQuery提交表單時,是否可以將生成的頁面(在提交後)放入另一個HTML元素中?表單提交後jQuery部分頁面刷新

我會盡量讓這個更清楚。到現在爲止我一直在使用回調方法等做了

document.forms['form'].submit(); 

每當形式已經更新了新的信息和需要刷新。但是,這會導致整個頁面刷新。我執行使用jQuery部分頁面刷新和使用的東西的想法一樣

var newContent = jQuery('#form').submit(); 
jQuery('#div').load(newContent); 

然而,這似乎並沒有工作在頁面仍然是完全刷新。內容是正確的,但行爲似乎與以前完全一樣 - 所以我不確定是否我想要的實際上可以使用jQuery。任何提示和指針都會有所幫助。

謝謝。

回答

4

您需要做的是使用ajax方法之一來發布表單,並將輸出注入success回調中的元素。例如:

$("#submit").click(function() { 
    $.post($("#form").attr("action"), $("#form").serialize(), function(html) { 
     $("div.result").html(html); 
    }); 
    return false; // prevent normal submit 
}); 

看看$.post$.ajax

1

問題尚不清楚。花更多時間理解jQuery ajax api,找到使用jquery ajax更新dom元素的更好方法。

如果您正在討論由於ajax調用導致dom更改後無法使用事件綁定。在事件api中引用jquery live/die方法。