2011-09-16 225 views
1

我正在檢索Google的天氣API XML並使用PHP。我正在檢索搜索到的城市的天氣。無刷新提交表單

現在,這個「應用程序」在一個標籤下,每當我提交表單刷新,我想要防止這種情況。

可能嗎?這將在儀表板中實現 - 這就是我想阻止刷新的原因。

這就是我的意思是:http://www.screenr.com/30As

整個代碼是在這裏:http://jsfiddle.net/ZshpF/ 簡單,複製粘貼到PHP文件中的代碼,它會工作。

回答

6

您需要使用AJAX。既然你在標籤中提到了jQuery,它就有一個very handy function用於調用服務器。但是,從JavaScript調用只是一個故事,您還需要在服務器上監聽該呼叫。它本質上是另一個PHP腳本,它本身充當頁面,但會以(很可能)JSON而不是HTML格式返回數據。這並不意味着人類可讀,而是要成爲您的JavaScript代碼使用的一種Web服務。

你可以找到一個簡單的例子here

+0

所以唯一的方法是擁有另一個PHP腳本,對吧? – jQuerybeast

+1

不僅是標籤,還有暱稱! :) @jQuerybeast:是的。 – hakre

+0

@jQuerybeast:不要認爲它是唯一的方法,認爲它是更好的方法。您可以將AJAX請求發送給同一個服務器資源,並向其傳遞一個查詢字符串參數以區分您需要在PHP代碼中返回的內容,但這被認爲是糟糕的設計。這是一個單獨的請求,通常應該作爲單獨的服務器資源來處理。 – David

0

我認爲你可以使用jQuery ajaxForm

+1

避免使用插件,除非你絕對必須,否則你最終會得到一個臃腫的應用程序。 –

+0

這是一個很好的測試插件。 –

+0

它可能是,但在這種情況下,您可以使用jQuery進行直接的ajax調用。不需要插件。 –