2013-03-28 64 views
0

我有一個REST Url http://localhost/issues向我展示了一個用於查詢錯誤跟蹤系統問題的搜索表單。搜索表單的文本框爲name="f"。表單的作用是action="/issues"method=GET。因此,如果我在文本框中輸入「foobar」,我將被重定向到http://localhost/issues?f=foobarjquery ajax搜索表單

爲了防止頁面重新加載,我使用jQuery與AJAX。所以我用$(document).on('submit',...)將AJAX查詢函數綁定到表單的提交函數。我用螢火蟲來證明,jquery發送請求並且不會重新載入頁面。我還有一個功能,可以將響應結果填充到瀏覽器中顯示的網站中。一切工作正常的第一次搜索嘗試。

但是,如果我在文本字段中輸入另一個搜索字符串「anotherfoobar」並重新發送請求,請求URL是http://localhost/issues?f=foobar&f=anotherfoobar,所以搜索參數僅附加到URL,未更新,我認爲會發生。

我讀過關於「哈希」的URL參數,以防止這種行爲在這裏stackoverflow,但不完全明白什麼,爲什麼發生這種情況,什麼「哈希」意味着什麼。也許這對我來說不是合適的解決方案。所以我懇請某人解釋我如何解決這個問題。

回答

0

我已經解決了!不要問,我做了什麼,如下:

AJAX響應是整個網頁,因爲我會得到它與頁面重新加載。與jQuery的我選擇一個包括搜索形式和結果的股利。

我只是爲結果定義了一個div,並且只更新了結果div的內容。這樣做後,一切正常,結果div更新與多次搜索嘗試。

不知道我做什麼的另一種情況,但我做的罰款;)

也許有人仍然可以給我解釋一下我的錯誤,以便智慧才能上升。